Пример #1
0
class NamedPipeTests(TestCase):
    def setUp(self):
        self._path_name = "/tmp/named_pipe_test"
        self.interface = NamedPipe(self._path_name)

    def test_instance(self):
        self.assertIsNotNone(self.interface)

    def test_pipe_read(self):
        test_message = 'Test'
        pipe = os.open(self._path_name, os.O_WRONLY)
        os.write(pipe, test_message)
        response = self.interface.read()
        self.assertEqual(test_message, response)

    def test_pipe_interface_read(self):
        path = '/tmp/named_pipe_test2'
        pi = StateInterface(NamedPipe(path))
        #pi.onCommand(self.test_pipe_interface_read_callback)
        d1 = Light(address=None, devices=pi)
        self.assertEqual(d1.state, State.UNKNOWN)

        pipe = os.open(path, os.O_WRONLY)
        os.write(pipe, State.ON)
        time.sleep(2)
        self.assertEqual(d1.state, State.ON)

    def test_pipe_interface_read_callback(self, *args, **kwargs):
        pass


    def tearDown(self):
        self.interface.close()
Пример #2
0
class NamedPipeTests(TestCase):
    def setUp(self):
        self._path_name = "/tmp/named_pipe_test"
        self.interface = NamedPipe(self._path_name)
            
    def test_instance(self):
        self.assertIsNotNone(self.interface)
    
    def test_pipe_read(self):
        test_message = 'Test'
        pipe = os.open(self._path_name, os.O_WRONLY)
        os.write(pipe, test_message)
        response = self.interface.read()
        self.assertEqual(test_message, response)
        
    def tearDown(self):
        self.interface.close()
        
Пример #3
0
    def test_pipe_interface_read(self):
        path = '/tmp/named_pipe_test2'
        pi = StateInterface(NamedPipe(path))
        #pi.onCommand(self.test_pipe_interface_read_callback)
        d1 = Light(address=None, devices=pi)
        self.assertEqual(d1.state, State.UNKNOWN)

        pipe = os.open(path, os.O_WRONLY)
        os.write(pipe, State.ON)
        time.sleep(2)
        self.assertEqual(d1.state, State.ON)
Пример #4
0
 def setUp(self):
     self._path_name = "/tmp/named_pipe_test"
     self.interface = NamedPipe(self._path_name)
Пример #5
0
 def setUp(self):
     self._path_name = "/tmp/named_pipe_test"
     self.interface = NamedPipe(self._path_name)
Пример #6
0
# invert the DIO channels for these contact sensors
sg.dio_invert(1)
sg.dio_invert(2)
sg.dio_invert(3)
sg.dio_invert(4)
sg.dio_invert(5)
sg.dio_invert(6)
sg.dio_invert(7)
sg.dio_invert(8)
sg.dio_invert(9)
sg.dio_invert(10)
sg.dio_invert(11)
sg.dio_invert(12)

# My camera motion software will echo a "motion" to this pipe.
pipe_front_yard_motion = StateInterface(NamedPipe('/tmp/front_yard_motion'))

thermostat_upstairs = Thermostat(
    devices=HW_Thermostat(HTTP(host='192.168.13.211'), poll=60),
    name='Thermostat Upstairs',
    automatic_delta=2,
    time=({
        Attribute.TIME: (0, 30, 5, '*', '*', (1, 2, 3, 4, 5)),
        Attribute.COMMAND: (Command.LEVEL, 72),
    }, ))

thermostat_downstairs = Thermostat(devices=HW_Thermostat(
    HTTP(host='192.168.13.210'), poll=60),
                                   name='Thermostat Downstairs',
                                   automatic_delta=2)