def test_input_parser(): """Test parsing of command.""" message = ":M000010A1050" inp = InputParser.parse(message) assert isinstance(inp[0], ModStatusOutput) message = ":M000010O1050" inp = InputParser.parse(message) assert isinstance(inp[0], ModStatusOutputNative)
def test_input_parser(): """Test parsing of command.""" message = "+M004000010.SKH001002" inp = InputParser.parse(message) assert isinstance(inp[0], ModSendCommandHost) message = "+M004000010.SKH001002003004005006" inp = InputParser.parse(message) assert isinstance(inp[0], ModSendCommandHost) message = "+M004000010.SKH001002003004005006007008009010011012013014" inp = InputParser.parse(message) assert isinstance(inp[0], ModSendCommandHost)
def test_message_parsing_single_mod_input(message, expected): """Test if InputMod parses message correctly.""" exp = (expected[0])(LcnAddr(0, 10, False), *expected[1:]) inp = InputParser.parse(message) assert len(inp) == 1 assert type(inp[0]) == type(exp) # pylint: disable=unidiomatic-typecheck assert vars(inp[0]) == vars(exp)
def test_parse_message_native(pck, expected): """Parse output in native units status message.""" message = f":M000010{pck}" inp = InputParser.parse(message)[0] assert isinstance(inp, ModStatusOutputNative) assert inp.get_output_id() == expected[0] assert inp.get_value() == expected[1]
def test_parse_message_percent(pck, expected): """Parse output in percent status message.""" message = f":M000010{pck}" inp = InputParser.parse(message)[0] assert isinstance(inp, ModStatusOutput) assert inp.get_output_id() == expected[0] assert inp.get_percent() == expected[1]
def test_parse_message_percent(pck, expected): """Parse output in percent status message.""" message = f"+M004000010.{pck}" inp = InputParser.parse(message)[0] assert isinstance(inp, ModSendCommandHost) assert inp.get_parameters() == expected