aboutsummaryrefslogtreecommitdiff
path: root/pocketbook/tests/test_app_toggle.py
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2026-07-02 17:09:42 -0400
committerCraig Jennings <c@cjennings.net>2026-07-02 17:09:42 -0400
commit21e82448fc66e2249b8c30ddfa6f487af9f5f718 (patch)
tree9f145597ed19dd2b22910c351e7a733153bb4ac6 /pocketbook/tests/test_app_toggle.py
parentbb9c56edd028814935bf5042ec3018a6afb52a4d (diff)
downloadarchsetup-21e82448fc66e2249b8c30ddfa6f487af9f5f718.tar.gz
archsetup-21e82448fc66e2249b8c30ddfa6f487af9f5f718.zip
chore(pocketbook)!: remove the in-tree pocketbook package
Craig's finish-or-cancel checkpoint resolved to remove: the app left daily use in May and the org-capture popup covers quick notes. The pip install, launcher, and Super+P bind went with it (dotfiles a750cb4); the three pocketbook tasks are closed.
Diffstat (limited to 'pocketbook/tests/test_app_toggle.py')
-rw-r--r--pocketbook/tests/test_app_toggle.py96
1 files changed, 0 insertions, 96 deletions
diff --git a/pocketbook/tests/test_app_toggle.py b/pocketbook/tests/test_app_toggle.py
deleted file mode 100644
index cb5ab89..0000000
--- a/pocketbook/tests/test_app_toggle.py
+++ /dev/null
@@ -1,96 +0,0 @@
-from pocketbook.app import ToggleStateMachine, EscapeStateMachine, navigate
-
-
-class TestToggleStateMachine:
- def test_initial_state_visible(self):
- sm = ToggleStateMachine(start_hidden=False)
- assert sm.visible is True
-
- def test_initial_state_hidden(self):
- sm = ToggleStateMachine(start_hidden=True)
- assert sm.visible is False
-
- def test_toggle_alternates(self):
- sm = ToggleStateMachine(start_hidden=False)
- assert sm.visible is True
- sm.toggle()
- assert sm.visible is False
- sm.toggle()
- assert sm.visible is True
-
- def test_toggle_from_hidden(self):
- sm = ToggleStateMachine(start_hidden=True)
- assert sm.visible is False
- sm.toggle()
- assert sm.visible is True
- sm.toggle()
- assert sm.visible is False
-
-
-class TestEscapeStateMachine:
- def test_escape_while_editing_returns_exit_edit(self):
- esc = EscapeStateMachine()
- toggle = ToggleStateMachine(start_hidden=False)
- action = esc.escape(is_editing=True, toggle=toggle)
- assert action == "exit_edit"
- # Toggle state should not change
- assert toggle.visible is True
-
- def test_escape_while_browsing_returns_hide(self):
- esc = EscapeStateMachine()
- toggle = ToggleStateMachine(start_hidden=False)
- action = esc.escape(is_editing=False, toggle=toggle)
- assert action == "hide"
- assert toggle.visible is False
-
- def test_escape_edit_then_browse_hides(self):
- """Simulates: editing → Escape (exit edit) → Escape (hide)."""
- esc = EscapeStateMachine()
- toggle = ToggleStateMachine(start_hidden=False)
-
- # First escape: exit edit mode
- action1 = esc.escape(is_editing=True, toggle=toggle)
- assert action1 == "exit_edit"
- assert toggle.visible is True
-
- # Second escape: now in browse mode, hide panel
- action2 = esc.escape(is_editing=False, toggle=toggle)
- assert action2 == "hide"
- assert toggle.visible is False
-
- def test_escape_hide_does_not_change_when_already_hidden(self):
- esc = EscapeStateMachine()
- toggle = ToggleStateMachine(start_hidden=True)
- assert toggle.visible is False
- action = esc.escape(is_editing=False, toggle=toggle)
- assert action == "hide"
- # Toggled again — now visible (edge case if called when hidden)
- assert toggle.visible is True
-
-
-class TestNavigate:
- def test_no_notes(self):
- assert navigate(None, 0, 1) is None
- assert navigate(None, 0, -1) is None
-
- def test_no_focus_next_goes_to_first(self):
- assert navigate(None, 3, 1) == 0
-
- def test_no_focus_prev_goes_to_last(self):
- assert navigate(None, 3, -1) == 2
-
- def test_next_from_middle(self):
- assert navigate(1, 3, 1) == 2
-
- def test_prev_from_middle(self):
- assert navigate(1, 3, -1) == 0
-
- def test_next_clamps_at_end(self):
- assert navigate(2, 3, 1) == 2
-
- def test_prev_clamps_at_start(self):
- assert navigate(0, 3, -1) == 0
-
- def test_single_note(self):
- assert navigate(0, 1, 1) == 0
- assert navigate(0, 1, -1) == 0