Пример #1
0
    def test_symbol(self):
        self.assertEqual(sym('asdf'), sexpr.parse1("asdf"))
        self.assertNotEqual(sym('asdf'), sexpr.parse1("asdf1"))

        self.assertTrue(sym('asdf') == sexpr.parse1("asdf"))
        self.assertTrue(sym('asdf') == sym('asdf'))
        self.assertTrue(sym('asdf') != sexpr.parse1("asdf1"))
        self.assertTrue(sym('asdf') != sym('asdf1'))

        self.assertTrue(sym('let') == sym('let'))
        self.assertFalse(sym('let') != sym('let'))
Пример #2
0
 def test_big_expr(self):
     self.assertEqual(['asdf', [sym('bar'), sym('baz')], [123], [[['what', 123]]], 'foo'], sexpr.parse1("('asdf' (bar baz) (123) ((('what' 123))) 'foo')"))
Пример #3
0
 def test_nested_list(self):
     self.assertEqual([[[]]], sexpr.parse1("((()))"))
Пример #4
0
 def test_nested_with_elements(self):
     self.assertEqual([sym('a'), ['b', [3], 'b'], sym('a')], sexpr.parse1("(a ('b' (3) \"b\") a)"))
Пример #5
0
 def test_2_elements(self):
     self.assertEqual([123, 456], sexpr.parse1("(123 456)"))
Пример #6
0
 def test_empty_list(self):
     self.assertEqual([], sexpr.parse1("()"))
Пример #7
0
 def test_string_with_backslash(self):
     self.assertEqual(r'12\3', sexpr.parse1(r"'12\\3'"))
     self.assertEqual('12\n3', sexpr.parse1(r"'12\n3'"))
Пример #8
0
 def test_string(self):
     self.assertEqual('123', sexpr.parse1("'123'"))
     self.assertEqual('123', sexpr.parse1('"123"'))
Пример #9
0
 def test_int(self):
     self.assertEqual(123, sexpr.parse1("123"))