예제 #1
0
 def test_from_knx_wrong_parameter2(self):
     """Test parsing of DPTScaling with wrong value (array containing string)."""
     with pytest.raises(ConversionError):
         DPTScaling.from_knx("0x23")
예제 #2
0
 def test_value_30_pct(self):
     """Test parsing and streaming of DPTScaling 30%."""
     assert DPTScaling.to_knx(30) == (0x4C, )
     assert DPTScaling.from_knx((0x4C, )) == 30
예제 #3
0
 def test_from_knx_wrong_value(self):
     """Test parsing of DPTScaling with value which exceeds limits."""
     with pytest.raises(ConversionError):
         DPTScaling.from_knx((0x256, ))
예제 #4
0
 def test_from_knx_wrong_parameter(self):
     """Test parsing of DPTScaling with wrong value (3 byte array)."""
     with pytest.raises(ConversionError):
         DPTScaling.from_knx((0x01, 0x02, 0x03))
예제 #5
0
 def test_value_min(self):
     """Test parsing and streaming of DPTScaling 0."""
     assert DPTScaling.to_knx(0) == (0x00, )
     assert DPTScaling.from_knx((0x00, )) == 0
예제 #6
0
 def test_value_max(self):
     """Test parsing and streaming of DPTScaling 100%."""
     assert DPTScaling.to_knx(100) == (0xFF, )
     assert DPTScaling.from_knx((0xFF, )) == 100
예제 #7
0
 def test_value_99_pct(self):
     """Test parsing and streaming of DPTScaling 99%."""
     assert DPTScaling.to_knx(99) == (0xFC, )
     assert DPTScaling.from_knx((0xFC, )) == 99