40 lines
1.2 KiB
Python
40 lines
1.2 KiB
Python
"""Unit: supervise's new-proposal highlight window.
|
|
|
|
The curses rendering itself is exercised manually; this isolates
|
|
the pure decision `is the proposal still in its post-arrival
|
|
highlight window?`"""
|
|
|
|
import unittest
|
|
|
|
from bot_bottle.cli import supervise as dashboard
|
|
|
|
|
|
class TestIsRecent(unittest.TestCase):
|
|
def test_just_seen_is_recent(self):
|
|
self.assertTrue(dashboard._is_recent("p1", {"p1": 100.0}, now=100.5))
|
|
|
|
def test_seen_within_window(self):
|
|
# Default window is 5s.
|
|
self.assertTrue(
|
|
dashboard._is_recent("p1", {"p1": 100.0}, now=104.9),
|
|
)
|
|
|
|
def test_seen_past_window_is_not_recent(self):
|
|
self.assertFalse(
|
|
dashboard._is_recent("p1", {"p1": 100.0}, now=106.0),
|
|
)
|
|
|
|
def test_unknown_proposal_is_not_recent(self):
|
|
self.assertFalse(
|
|
dashboard._is_recent("p2", {"p1": 100.0}, now=100.5),
|
|
)
|
|
|
|
def test_none_args_safe_default(self):
|
|
self.assertFalse(dashboard._is_recent("p1", None, None))
|
|
self.assertFalse(dashboard._is_recent("p1", {"p1": 100.0}, None))
|
|
self.assertFalse(dashboard._is_recent("p1", None, 100.5))
|
|
|
|
|
|
if __name__ == "__main__":
|
|
unittest.main()
|