Adjust fix for #1639 to still create entries if both --edit and --change-time flags are present

This commit is contained in:
Richard Schneider 2022-11-13 15:50:57 -06:00
parent 35b93f121c
commit 0fbdf25e83
2 changed files with 13 additions and 20 deletions

View file

@ -187,12 +187,6 @@ def search_mode(args: "Namespace", journal: Journal, **kwargs) -> None:
if args.edit:
# If we want to both edit and change time in one action
if args.change_time:
if not journal:
# --edit can be called on an empty journal, but --edit
# and --change-time together means the user is likely
# expecting to have selected some entries; bail out
return
# Generate a new list instead of assigning so it won't be
# modified by _change_time_search_results
selected_entries = [e for e in journal.entries]
@ -210,9 +204,7 @@ def search_mode(args: "Namespace", journal: Journal, **kwargs) -> None:
_edit_search_results(**kwargs)
elif not journal:
# Bail out if there are no entries and we're not editing; we
# could put this before the above edit block, but there are
# some use cases where --edit is called on an empty journal
# Bail out if there are no entries and we're not editing
return
elif args.change_time:
@ -445,7 +437,6 @@ def _change_time_search_results(
MsgText.ChangeTimeEntryQuestion
)
if entries_to_change:
other_entries += [e for e in journal.entries if e not in entries_to_change]
journal.entries = entries_to_change

View file

@ -243,17 +243,19 @@ Feature: Change entry times in journal
# | basic_dayone.yaml | @todo
Scenario Outline: --change-time with --edit and no selected entries doesn't overwrite journal
Scenario Outline: --change-time with --edit and an empty search adds an entry
Given we use the config "<config_file>"
And we write nothing to the editor if opened
And we use the password "test" if prompted
When we run "jrnl -on tomorrow --change-time '2022-04-23 10:30' --edit"
#Then the error output should contain "No entry to modify"
And we append to the editor if opened
[2022-11-13 11:25] worked on jrnl tests
When we run "jrnl -on tomorrow --change-time --edit"
When we run "jrnl -99 --short"
Then the output should be
2020-08-29 11:11 Entry the first.
2020-08-31 14:32 A second entry in what I hope to be a long series.
2020-09-24 09:14 The third entry finally after weeks without writing.
2022-11-13 11:25 worked on jrnl tests
Examples: Configs
| config_file |