Esempio n. 1
0
 def test_close(self):
     ser = SerialStub()
     rts = SomfyRTS(ser, interval=0)
     rts.up(1)
     self.assertEqual(1, len(ser.output))
     self.assertEqual(b'U1\r', ser.output[0])
     rts.close()
     with self.assertRaises(AssertionError):
         rts.up(2)
Esempio n. 2
0
 def test_close_threaded(self):
     ser = SerialStub()
     rts = SomfyRTS(ser, interval=1.0, thread=True)
     rts.up([1, 2, 3])
     sleep(0.5)
     self.assertEqual(1, len(ser.output))
     self.assertEqual(b'U1\r', ser.output[0])
     rts.close()
     sleep(3.0)
     self.assertEqual(1, len(ser.output))
Esempio n. 3
0
 def test_fast_close(self):
     ser = SerialStub()
     rts = SomfyRTS(ser, interval=20.0, thread=True)
     timer = Timer()
     rts.up([1, 2, 3])
     sleep(0.5)
     self.assertEqual(1, len(ser.output))
     self.assertEqual(b'U1\r', ser.output[0])
     rts.close()
     self.assertAlmostEqual(timer.elapsed, 0.5, places=1)
     self.assertEqual(1, len(ser.output))