| Conditions | 1 | 
| Total Lines | 26 | 
| Lines | 0 | 
| Ratio | 0 % | 
| 1 | import mock  | 
            ||
| 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 |