class TestProcessor(unittest.TestCase):
    """
    Tests for `Processor`.
    """

    def setUp(self):
        self._cookie = Cookie("id")
        self._processor = StubProcessor()
        self._processor.evaluate_rules_with_cookie = MagicMock()
        self._processor.handle_cookie_enrichment = MagicMock()

    def test_process_cookie_when_no_termination(self):
        self._processor.evaluate_rules_with_cookie.return_value = False
        self._processor.process_cookie(self._cookie)

        self._processor.evaluate_rules_with_cookie.assert_called_once_with(self._cookie)
        self._processor.handle_cookie_enrichment.assert_called_once_with(self._cookie)

    def test_process_cookie_when_termination(self):
        self._processor.evaluate_rules_with_cookie.return_value = True
        self._processor.process_cookie(self._cookie)

        self._processor.evaluate_rules_with_cookie.assert_called_once_with(self._cookie)
        self._processor.handle_cookie_enrichment.assert_not_called()
 def setUp(self):
     self._cookie = Cookie("id")
     self._processor = StubProcessor()
     self._processor.evaluate_rules_with_cookie = MagicMock()
     self._processor.handle_cookie_enrichment = MagicMock()