import numpy as np from bookmark.capture_strategies.manual_button import ManualButtonStrategy def test_does_not_fire_without_trigger(): strategy = ManualButtonStrategy() frame = np.zeros((10, 10, 3), dtype=np.uint8) assert strategy.observe(frame) is False def test_fires_once_after_trigger(): strategy = ManualButtonStrategy() frame = np.zeros((10, 10, 3), dtype=np.uint8) strategy.trigger() assert strategy.observe(frame) is True assert strategy.observe(frame) is False def test_reset_clears_armed_state(): strategy = ManualButtonStrategy() frame = np.zeros((10, 10, 3), dtype=np.uint8) strategy.trigger() strategy.reset() assert strategy.observe(frame) is False