Use explicit "given the config exists" for copying config files instead of shoehorning in "given we use the config" twice

This commit is contained in:
Micah Jerome Ellison 2021-10-23 13:47:34 -07:00
parent 31354ba669
commit 51e8606f44
2 changed files with 26 additions and 18 deletions

View file

@ -1,15 +1,15 @@
Feature: Multiple journals
Scenario: Loading an alternate config with two journals
Given we use the config "basic_onefile.yaml"
Given we use the config "multiple.yaml" # Repeating step to ensure both are copied
Given the config "basic_onefile.yaml" exists
And we use the config "multiple.yaml"
When we run "jrnl --cf basic_onefile.yaml -999"
Then the output should not contain "My first entry" # from multiple.yaml
And the output should contain "Lorem ipsum" # from basic_onefile.yaml
Scenario: Write to default journal by default using an alternate config
Given we use the config "multiple.yaml"
Given we use the config "basic_onefile.yaml"
Given the config "multiple.yaml" exists
And we use the config "basic_onefile.yaml"
When we run "jrnl --cf multiple.yaml this goes to default"
When we run "jrnl -1"
Then the output should not contain "this goes to default"
@ -17,8 +17,8 @@ Feature: Multiple journals
Then the output should contain "this goes to default"
Scenario: Write to specified journal using an alternate config
Given we use the config "multiple.yaml"
Given we use the config "basic_onefile.yaml"
Given the config "multiple.yaml" exists
And we use the config "basic_onefile.yaml"
When we run "jrnl work --cf multiple.yaml a long day in the office"
And we run "jrnl default --cf multiple.yaml -1"
Then the output should contain "But I'm better"
@ -26,14 +26,14 @@ Feature: Multiple journals
Then the output should contain "a long day in the office"
Scenario: Tell user which journal was used using an alternate config
Given we use the config "multiple.yaml"
Given we use the config "basic_onefile.yaml"
Given the config "multiple.yaml" exists
And we use the config "basic_onefile.yaml"
When we run "jrnl --cf multiple.yaml work a long day in the office"
Then we should see the message "Entry added to work journal"
Scenario: Write to specified journal with a timestamp using an alternate config
Given we use the config "multiple.yaml"
Given we use the config "basic_onefile.yaml"
Given the config "multiple.yaml" exists
And we use the config "basic_onefile.yaml"
When we run "jrnl work --cf multiple.yaml 23 july 2012: a long day in the office"
And we run "jrnl --cf multiple.yaml -1"
Then the output should contain "But I'm better"
@ -42,8 +42,8 @@ Feature: Multiple journals
And the output should contain "2012-07-23"
Scenario: Write to specified journal without a timestamp but with colon using an alternate config
Given we use the config "multiple.yaml"
Given we use the config "basic_onefile.yaml"
Given the config "multiple.yaml" exists
And we use the config "basic_onefile.yaml"
When we run "jrnl work --cf multiple.yaml : a long day in the office"
And we run "jrnl --cf multiple.yaml -1"
Then the output should contain "But I'm better"
@ -51,8 +51,8 @@ Feature: Multiple journals
Then the output should contain "a long day in the office"
Scenario: Create new journals as required using an alternate config
Given we use the config "multiple.yaml"
Given we use the config "basic_onefile.yaml"
Given the config "multiple.yaml" exists
And we use the config "basic_onefile.yaml"
When we run "jrnl ideas -1"
Then the output should be empty
When we run "jrnl ideas --cf multiple.yaml 23 july 2012: sell my junk on ebay and make lots of money"
@ -61,14 +61,14 @@ Feature: Multiple journals
Then the output should contain "sell my junk on ebay and make lots of money"
Scenario: Don't crash if no default journal is specified using an alternate config
Given we use the config "bug343.yaml"
Given we use the config "basic_onefile.yaml"
Given the config "bug343.yaml" exists
And we use the config "basic_onefile.yaml"
When we run "jrnl --cf bug343.yaml a long day in the office"
Then we should see the message "No default journal configured"
Scenario: Don't crash if no file exists for a configured encrypted journal using an alternate config
Given we use the config "multiple.yaml"
Given we use the config "basic_onefile.yaml"
Given the config "multiple.yaml" exists
And we use the config "basic_onefile.yaml"
When we run "jrnl new_encrypted --cf multiple.yaml Adding first entry" and enter
these three eyes
these three eyes

View file

@ -108,6 +108,14 @@ def we_use_the_config(config_file, temp_dir, working_dir):
return config_dest
@given(parse('the config "{config_file}" exists'), target_fixture="config_path")
@given('the config "<config_file>" exists', target_fixture="config_path")
def config_exists(config_file, temp_dir, working_dir):
config_source = os.path.join(working_dir, "data", "configs", config_file)
config_dest = os.path.join(temp_dir.name, config_file)
shutil.copy2(config_source, config_dest)
@given(parse('we use the password "{pw}" if prompted'), target_fixture="password")
def use_password_forever(pw):
return pw