def test_main(): output = subprocess.Popen([ "C:\\Users\\Admin\\Desktop\\university\\dva339\\lab2\\lab2.1\\Test2.1\\Test21.exe", "./false.bat", "1" ], stdout=subprocess.PIPE, stderr=subprocess.PIPE).communicate()[0].decode( ) p = output[output.find(")") + 1:].strip() pretty_parse_p = str(parse(lex(p))[0]) pretty_parse_pretty_parse_p = str(parse(lex(pretty_parse_p))[0]) return equals_program(p, pretty_parse_p), equals_program( pretty_parse_p, pretty_parse_pretty_parse_p), p
def test_integration_one(self): src = ' if { 123 {{ {123 if{' actual_tokens = lex(src) expected_tokens = [('IF', 'if', 1, 3), ('CURLY_OPEN', '{', 1, 6), ('NUM', '123', 1, 8), ('CURLY_OPEN', '{', 1, 12), ('CURLY_OPEN', '{', 1, 13), ('CURLY_OPEN', '{', 1, 15), ('NUM', '123', 1, 16), ('IF', 'if', 1, 20), ('CURLY_OPEN', '{', 1, 22)] self.assertEqual(actual_tokens, expected_tokens)
def test_main(): output = subprocess.Popen( ["..\\..\\lab2.1\\Test2.1\\Test21.exe", "./false.bat", "1"], stdout=subprocess.PIPE, stderr=subprocess.PIPE).communicate()[0].decode() p = output[output.find(")") + 1:].strip() # remove comments lines = "" p = re.split(r'\r\n|\r|\n', p.strip()) for line in p: start = re.search("//", line) if start: lines += line[:start.span()[0]] + "\n" else: lines += line + "\n" # --------------------------------------------------- p = lines print(p) pretty_parse_p = str(parse(lex(p))[0]) # pretty_parse_pretty_parse_p = str(parse(lex(pretty_parse_p))[0]) # return equals_program(p, pretty_parse_p), equals_program(pretty_parse_p, pretty_parse_pretty_parse_p), p return True, True, None
def load(self, url): headers, body = main.request(url) text = main.lex(body) self.display_list = self.layout(text) self.render()
def test_one(self): src = ' if' actual_tokens = lex(src) expected_tokens = [('IF', 'if', 1, 2)] self.assertEqual(actual_tokens, expected_tokens)