def test_get_value(): solver = Solver() with pytest.raises(ValueError): solver.get_value("x") solver.inputs = {"x": ["123"], "y": "x AND 119".split()} with pytest.raises(KeyError): solver.get_value("x") solver.outputs = {"x": 123, "y": 115} assert solver.get_value("y") == 115 assert solver.get_value("115") == 115
def test_do_instruction(): solver = Solver() solver.inputs = {"x": "123", "y": "456"} solver.outputs = {"x": 123, "y": 456} assert solver.do_instruction(["123"]) == 123 assert solver.do_instruction(["456"]) == 456 assert solver.do_instruction("123 AND 456".split()) == 123 & 456 assert solver.do_instruction("NOT 123".split()) == ~np.uint16(123) assert solver.do_instruction(["x"]) == 123 assert solver.do_instruction(["y"]) == 456 assert solver.do_instruction("x AND y".split()) == 123 & 456 assert solver.do_instruction("123 AND y".split()) == 123 & 456 assert solver.do_instruction("x AND 456".split()) == 123 & 456 assert solver.do_instruction("NOT x".split()) == ~np.uint16(123)