# Copyright © 2012-2023 jrnl contributors # License: https://www.gnu.org/licenses/gpl-3.0.html Feature: Implementing Runtime Overrides for Select Configuration Keys Scenario: Override configured editor with built-in input === editor:'' Given we use the config "basic_encrypted.yaml" And we use the password "test" if prompted When we run "jrnl --config-override editor ''" and type This is a journal entry Then the stdin prompt should have been called And the editor should not have been called When we run "jrnl -1" Then the output should contain "This is a journal entry" Scenario: Postconfig commands with overrides Given we use the config "basic_encrypted.yaml" And we use the password "test" if prompted When we run "jrnl --decrypt --config-override highlight false --config-override editor nano" Then the config in memory should contain "highlight: false" Then the editor should not have been called Scenario: Override configured linewrap with a value of 23 Given we use the config "simple.yaml" And we use the password "test" if prompted When we run "jrnl -2 --config-override linewrap 23 --format fancy" Then the output should be ┎─────╮2013-06-09 15:39 ┃ My ╘═══════════════╕ ┃ fir st ent ry. │ ┠╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌┤ ┃ Everything is │ ┃ alright │ ┖─────────────────────┘ ┎─────╮2013-06-10 15:40 ┃ Lif ╘═══════════════╕ ┃ e is goo d. │ ┠╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌┤ ┃ But I'm better. │ ┖─────────────────────┘ Scenario: Override color selections with runtime overrides Given we use the config "basic_encrypted.yaml" And we use the password "test" if prompted When we run "jrnl -1 --config-override colors.body blue" Then the config in memory should contain "colors.body: blue" Scenario: Override color selections with --co alias Given we use the config "basic_encrypted.yaml" And we use the password "test" if prompted When we run "jrnl -1 --co colors.body blue" Then the config in memory should contain "colors.body: blue" Scenario: Apply multiple config overrides Given we use the config "basic_encrypted.yaml" And we use the password "test" if prompted When we run "jrnl -1 --config-override colors.body green --config-override editor 'nano'" Then the config in memory should contain editor: nano colors: title: none body: green tags: none date: none Scenario: Override default journal Given we use the config "basic_dayone.yaml" And we use the password "test" if prompted When we run "jrnl --config-override journals.default features/journals/simple.journal 20 Mar 2000: The rain in Spain comes from clouds" Then we should get no error When we run "jrnl -3 --config-override journals.default features/journals/simple.journal" Then the output should be 2000-03-20 09:00 The rain in Spain comes from clouds 2013-06-09 15:39 My first entry. | Everything is alright 2013-06-10 15:40 Life is good. | But I'm better. Scenario: Make an entry into an overridden journal Given we use the config "basic_dayone.yaml" And we use the password "test" if prompted When we run "jrnl --config-override journals.temp features/journals/simple.journal temp Sep 06 1969: @say Ni" Then we should get no error And the output should contain "Entry added" When we run "jrnl --config-override journals.temp features/journals/simple.journal temp -3" Then the output should be 1969-09-06 09:00 @say Ni 2013-06-09 15:39 My first entry. | Everything is alright 2013-06-10 15:40 Life is good. | But I'm better.