anki/pylib/tests
Damien Elmes 704b5e581a Rework reschedule tool
The old rescheduling dialog's two options have been split into two
separate menu items, "Forget", and "Set Due Date"

For cards that are not review cards, "Set Due Date" behaves like the
old reschedule option, changing the cards into a review card, and
and setting both the interval and due date to the provided number of
days.

When "Set Due Date" is applied to a review card, it no longer resets
the card's interval. Instead, it looks at how much the provided number
of days will change the original interval, and adjusts the interval by
that amount, so that cards that are answered earlier receive a smaller
next interval, and cards that are answered after a longer delay receive
a bonus.

For example, imagine a card was answered on day 5, and given an interval
of 10 days, so it has a due date of day 15.

- if on day 10 the due date is changed to day 12 (today+2), the card
is being scheduled 3 days earlier than it was supposed to be, so the
interval will be adjusted to 7 days.
- and if on day 10 the due date is changed to day 20, the interval will
be changed from 10 days to 15 days.

There is no separate option to reset the interval of a review card, but
it can be accomplished by forgetting the card(s), and then setting the
desired due date.

Other notes:

- Added the action to the review screen as well.
- Set the shortcut to Ctrl+Shift+D, and changed the existing Delete
Tags shortcut to Ctrl+Alt+Shift+A.
2021-02-07 21:57:51 +10:00
..
support tweaking the folder names again 2020-01-03 07:48:38 +10:00
__init__.py tweaking the folder names again 2020-01-03 07:48:38 +10:00
run_format.py Update mypy and black format check to python version 3.8 2020-11-11 09:24:28 +00:00
run_mypy.py initial Bazel conversion 2020-11-01 14:26:58 +10:00
run_pylint.py initial Bazel conversion 2020-11-01 14:26:58 +10:00
run_pytest.py add ability to specify an individual Python test 2020-12-16 10:40:29 +10:00
shared.py fix errorsAfterMidnight 2020-04-08 10:05:19 +10:00
test_cards.py make backend instance on col private 2021-01-31 18:56:16 +10:00
test_collection.py start work on more clearly defining backend/protobuf boundaries 2021-01-31 18:55:45 +10:00
test_decks.py move drag/drop deck logic to backend 2021-01-31 13:46:31 +10:00
test_exporting.py Fix description of exporters 2020-11-19 23:52:46 +03:00
test_find.py use top level defs for protobuf enum cases 2021-02-05 19:26:13 +10:00
test_flags.py add tests and setup.py to checks; fix warnings 2020-01-06 15:27:59 +10:00
test_importing.py initial Bazel conversion 2020-11-01 14:26:58 +10:00
test_latex.py remove print statement from unit tests 2020-11-18 13:56:44 +10:00
test_media.py Merge pull request #793 from nwwt/object-audio-tags-support 2020-11-11 10:33:31 +10:00
test_models.py start work on more clearly defining backend/protobuf boundaries 2021-01-31 18:55:45 +10:00
test_schedv1.py Rework reschedule tool 2021-02-07 21:57:51 +10:00
test_schedv2.py Rework reschedule tool 2021-02-07 21:57:51 +10:00
test_stats.py d->col in tests 2020-07-17 06:58:32 +02:00
test_template.py d->col in tests 2020-07-17 06:58:32 +02:00
test_undo.py d->col in tests 2020-07-17 06:58:32 +02:00