Exemplo n.º 1
0
    def setUp(self):
        self.device_dao = Mock(DeviceDao)
        self.validator = Mock(DeviceValidator)
        self.notifier = Mock()
        self.search_engine = Mock(SearchEngine)
        self.line_dao = Mock()

        self.service = DeviceService(self.device_dao,
                                     self.validator,
                                     self.notifier,
                                     self.search_engine,
                                     self.line_dao)
Exemplo n.º 2
0
class TestDeviceService(unittest.TestCase):

    def setUp(self):
        self.device_dao = Mock(DeviceDao)
        self.validator = Mock(DeviceValidator)
        self.notifier = Mock()
        self.search_engine = Mock(SearchEngine)
        self.line_dao = Mock()

        self.service = DeviceService(self.device_dao,
                                     self.validator,
                                     self.notifier,
                                     self.search_engine,
                                     self.line_dao)

    def test_given_search_query_when_searching_then_calls_search_engine(self):
        result = self.service.search(sentinel.parameters)

        assert_that(result, equal_to(self.search_engine.search.return_value))
        self.search_engine.search.assert_called_once_with(sentinel.parameters)

    def test_when_synchronizing_then_synchronizes_using_dao(self):
        self.service.synchronize(sentinel.device)

        self.device_dao.synchronize.assert_called_once_with(sentinel.device)

    def test_when_resetting_to_autprov_then_resets_device_to_autoprov_using_dao(self):
        device = Device(id=sentinel.device_id)
        self.service.reset_autoprov(device)

        self.device_dao.reset_autoprov.assert_called_once_with(device)

    def test_when_resetting_to_autoprov_then_resets_line_associated_to_device(self):
        device = Device(id=sentinel.device_id)
        self.service.reset_autoprov(device)

        self.line_dao.reset_device.assert_called_once_with(sentinel.device_id)