def test_linux_command_special_method_repr():
    """ expect a __repr__ format """
    with mock.patch('mycodo.inputs.linux_command.LinuxCommand.get_measurement'
                    ) as mock_measure:
        mock_measure.side_effect = [0.0]
        linux_command = LinuxCommand(None, testing=True)
        linux_command.read()
        assert "<LinuxCommand(measurement=0.00)>" in repr(linux_command)
def test_linux_command_read_updates_temp():
    """  Verify that LinuxCommand(0x99, 1).read() gets the average temp """
    with mock.patch('mycodo.inputs.linux_command.LinuxCommand.get_measurement'
                    ) as mock_measure:
        mock_measure.side_effect = [67, 52]
        linux_command = LinuxCommand(None, testing=True)
        assert linux_command._measurement is None
        assert not linux_command.read()
        assert linux_command._measurement == 67.0
        assert not linux_command.read()
        assert linux_command._measurement == 52.0
def test_linux_command_condition_properties():
    """ verify measurement property """
    with mock.patch('mycodo.inputs.linux_command.LinuxCommand.get_measurement'
                    ) as mock_measure:
        mock_measure.side_effect = [67, 52]
        linux_command = LinuxCommand(None, testing=True)
        assert linux_command._measurement is None
        assert linux_command.measurement == 67.00
        assert linux_command.measurement == 67.00
        assert not linux_command.read()
        assert linux_command.measurement == 52.00