diff --git a/tangostationcontrol/tangostationcontrol/test/devices/test_device_docker.py b/tangostationcontrol/tangostationcontrol/test/devices/test_device_docker.py new file mode 100644 index 0000000000000000000000000000000000000000..1fbfbb131964ad8b9e949467cde485ba3d2ab08c --- /dev/null +++ b/tangostationcontrol/tangostationcontrol/test/devices/test_device_docker.py @@ -0,0 +1,47 @@ +# -*- coding: utf-8 -*- +# +# This file is part of the LOFAR 2.0 Station Software +# +# +# +# Distributed under the terms of the APACHE license. +# See LICENSE.txt for more info. + +from tango.test_context import DeviceTestContext + +from tangostationcontrol.devices import docker_device + +import numpy + +from tangostationcontrol.test.devices import device_base + + +class TestDockerDevice(device_base.DeviceTestCase): + + DOCKER_PROPERTIES = {'Docker_Base_URL': "unix:///var/run/docker.sock"} + + def setUp(self): + # DeviceTestCase setUp patches lofar_device DeviceProxy + super(TestDockerDevice, self).setUp() + + + def test_read(self): + """Test whether the device-docker container is running""" + with DeviceTestContext(docker_device.Docker, properties=self.DOCKER_PROPERTIES, process=True) as proxy: + self.assertEqual(proxy.device_docker_R, True) + + def test_toggle(self): + """ + Test turning off and on a running docker container + """ + with DeviceTestContext(docker_device.Docker, properties=self.DOCKER_PROPERTIES, process=True) as proxy: + # Turn the recv container off and check that it is indeed turned off + proxy.device_recv_RW = False + self.assertEqual(self.device_recv_R, False) + + # Turn the recv container on and check that it is indeed turned on + proxy.device_recv_RW = True + self.assertEqual(self.device_recv_R, True) + + +