Total Complexity | 1 |
Total Lines | 27 |
Duplicated Lines | 0 % |
1 | import mock |
||
20 | class DockerSensorTestCase(BaseSensorTestCase): |
||
21 | def test_poll(self): |
||
22 | # TODO: Move to base test class |
||
23 | sensor = DockerSensor(sensor_service=self.sensor_service) |
||
24 | |||
25 | # No existing and no running containers (e.g. after initial sensor poll) |
||
26 | sensor._running_containers = {} |
||
27 | sensor._get_active_containers = mock.Mock() |
||
28 | sensor._get_active_containers.return_value = {} |
||
29 | |||
30 | sensor.poll() |
||
31 | self.assertEqual(self.get_dispatched_triggers(), []) |
||
32 | |||
33 | # One container started |
||
34 | sensor._get_active_containers.return_value = {'1': MOCK_CONTAINER_DATA} |
||
35 | |||
36 | sensor.poll() |
||
37 | self.assertEqual(len(self.get_dispatched_triggers()), 1) |
||
38 | self.assertTriggerDispatched(trigger='docker.container_tracker.started', |
||
39 | payload={'container_info': MOCK_CONTAINER_DATA}) |
||
40 | |||
41 | # One container stopped |
||
42 | sensor._get_active_containers.return_value = {} |
||
43 | sensor.poll() |
||
44 | self.assertEqual(len(self.get_dispatched_triggers()), 2) |
||
45 | self.assertTriggerDispatched(trigger='docker.container_tracker.stopped', |
||
46 | payload={'container_info': MOCK_CONTAINER_DATA}) |
||
47 |