Example #1
0
    def test_init__should_fill_attributes(self):
        sdk = Mock()
        obj = DoorParameters(sdk, ZK400, 2)

        assert obj._sdk is sdk
        assert obj.device_model == ZK400
        assert obj.door_number == 2
Example #2
0
    def test_write_readwrite_property__if_wrong_value_passed__should_raise_error(
            self, prop, param, prop_type, sdk_value, prop_value, door_number,
            param_prefix):
        sdk = Mock()
        sdk.set_device_param.return_value = None
        obj = DoorParameters(sdk, ZK400, door_number)

        with pytest.raises((TypeError, ValueError)):
            setattr(obj, prop, prop_value)
Example #3
0
    def test_read_readwrite_property__if_wrong_value_returned__should_raise_error(
            self, prop, param, prop_type, sdk_value, prop_value, door_number,
            param_prefix):
        sdk = Mock()
        full_param = param_prefix + param
        sdk.get_device_param.return_value = {full_param: sdk_value}
        obj = DoorParameters(sdk, ZK400, door_number)

        with pytest.raises((TypeError, ValueError)):
            _ = getattr(obj, prop)
Example #4
0
 def setup(self):
     self.sdk = Mock()
     self.event_log = EventLog(self.sdk, 4096)
     self.doors = (Door(
         self.sdk, self.event_log, 1,
         RelayList(self.sdk,
                   (Relay(self.sdk, RelayGroup.lock,
                          1), Relay(self.sdk, RelayGroup.aux, 1))),
         Reader(self.sdk, self.event_log, 1),
         AuxInput(self.sdk, self.event_log, 1),
         DoorParameters(self.sdk, ZK200, 1)),
                   Door(
                       self.sdk, self.event_log, 2,
                       RelayList(self.sdk,
                                 (Relay(self.sdk, RelayGroup.lock, 2),
                                  Relay(self.sdk, RelayGroup.aux, 2))),
                       Reader(self.sdk, self.event_log, 2),
                       AuxInput(self.sdk, self.event_log, 2),
                       DoorParameters(self.sdk, ZK200, 2)))
     self.obj = DoorList(self.sdk, self.event_log, self.doors)
Example #5
0
    def test_write_readwrite_property__should_set_value_on_a_device(
            self, prop, param, prop_type, sdk_value, prop_value, door_number,
            param_prefix):
        sdk = Mock()
        sdk.set_device_param.return_value = None
        obj = DoorParameters(sdk, ZK400, door_number)
        full_param = param_prefix + param

        setattr(obj, prop, prop_value)

        sdk.set_device_param.assert_called_once_with(
            parameters={full_param: sdk_value})
Example #6
0
    def test_read_readwrite_property__should_return_value_of_correct_type(
            self, prop, param, prop_type, sdk_value, prop_value, door_number,
            param_prefix):
        sdk = Mock()
        full_param = param_prefix + param
        sdk.get_device_param.return_value = {full_param: sdk_value}
        obj = DoorParameters(sdk, ZK400, door_number)

        res = getattr(obj, prop)

        sdk.get_device_param.assert_called_once_with(parameters=(full_param, ),
                                                     buffer_size=4096)
        assert isinstance(res, prop_type)
        assert res == prop_value
Example #7
0
 def setup(self):
     self.sdk = Mock()
     self.event_log = EventLog(self.sdk, 4096)
     self.door_number = 2
     self.relays = (
         Relay(self.sdk, RelayGroup.lock, 1),
         Relay(self.sdk, RelayGroup.aux, 1),
     )
     self.relay_list = RelayList(self.sdk, self.relays)
     self.reader = Reader(self.sdk, self.event_log, self.door_number)
     self.aux_input = AuxInput(self.sdk, self.event_log, self.door_number)
     self.parameters = DoorParameters(self.sdk, ZK200, self.door_number)
     self.obj = Door(self.sdk, self.event_log, self.door_number,
                     self.relay_list, self.reader, self.aux_input,
                     self.parameters)