mirror of
				https://github.com/KevinMidboe/python-gpiozero.git
				synced 2025-10-29 17:50:37 +00:00 
			
		
		
		
	| @@ -846,6 +846,7 @@ class Energenie(SourceMixin, Device): | ||||
|             raise EnergenieSocketMissing('socket number must be provided') | ||||
|         if not (1 <= socket <= 4): | ||||
|             raise EnergenieBadSocket('socket number must be between 1 and 4') | ||||
|         self._value = None | ||||
|         super(Energenie, self).__init__() | ||||
|         self._socket = socket | ||||
|         self._master = _EnergenieMaster() | ||||
| @@ -877,8 +878,9 @@ class Energenie(SourceMixin, Device): | ||||
|  | ||||
|     @value.setter | ||||
|     def value(self, value): | ||||
|         self._master.transmit(self._socket, bool(value)) | ||||
|         self._value = bool(value) | ||||
|         value = bool(value) | ||||
|         self._master.transmit(self._socket, value) | ||||
|         self._value = value | ||||
|  | ||||
|     def on(self): | ||||
|         self.value = True | ||||
|   | ||||
| @@ -430,11 +430,15 @@ def test_energenie_bad_init(): | ||||
|         Energenie() | ||||
|     with pytest.raises(ValueError): | ||||
|         Energenie(0) | ||||
|     with pytest.raises(ValueError): | ||||
|         Energenie(5) | ||||
|  | ||||
| def test_energenie(): | ||||
|     pins = [MockPin(n) for n in (17, 22, 23, 27, 24, 25)] | ||||
|     with Energenie(1, initial_value=True) as device1, \ | ||||
|             Energenie(2, initial_value=False) as device2: | ||||
|         assert repr(device1) == '<gpiozero.Energenie object on socket 1>' | ||||
|         assert repr(device2) == '<gpiozero.Energenie object on socket 2>' | ||||
|         assert device1.value | ||||
|         assert not device2.value | ||||
|         [pin.clear_states() for pin in pins] | ||||
| @@ -455,4 +459,5 @@ def test_energenie(): | ||||
|         pins[3].assert_states_and_times([(0.0, True), (0.0, True)]) | ||||
|         pins[4].assert_states_and_times([(0.0, False)]) | ||||
|         pins[5].assert_states_and_times([(0.0, False), (0.1, True), (0.25, False)]) | ||||
|  | ||||
|         device1.close() | ||||
|         assert repr(device1) == '<gpiozero.Energenie object closed>' | ||||
|   | ||||
		Reference in New Issue
	
	Block a user