Ejemplo n.º 1
0
 def test_rest_bytestring(self):
     self.assertEqual(
         evaluate_with_prelude(parse_one(lex(u'(rest #bytes("abc"))'))),
         Bytestring([ord(c) for c in b"bc"]))
Ejemplo n.º 2
0
 def test_rest_string(self):
     self.assertEqual(
         evaluate_with_prelude(parse_one(lex(u'(rest "abc")'))),
         String(list(u"bc")))
Ejemplo n.º 3
0
 def test_last_string(self):
     self.assertEqual(
         evaluate_with_prelude(parse_one(lex(u'(last "abc")'))),
         Character(u'c'))
Ejemplo n.º 4
0
 def test_push_returns_null(self):
     self.assertEqual(
         evaluate_with_prelude(parse_one(lex(
             u"(push! (quote ()) 1)"))),
         NULL)
Ejemplo n.º 5
0
 def test_fifth_string(self):
     self.assertEqual(
         evaluate_with_prelude(parse_one(lex(u'(fifth "abcde")'))),
         Character(u'e'))
Ejemplo n.º 6
0
 def test_last_bytestring(self):
     self.assertEqual(
         evaluate_with_prelude(parse_one(lex(u'(last #bytes("abc"))'))),
         Integer.fromint(99))
Ejemplo n.º 7
0
 def test_second_string(self):
     self.assertEqual(
         evaluate_with_prelude(parse_one(lex(u'(second "abc")'))),
         Character(u'b'))
Ejemplo n.º 8
0
 def test_fifth_bytestring(self):
     self.assertEqual(
         evaluate_with_prelude(parse_one(lex(u'(fifth #bytes("abcde"))'))),
         Integer.fromint(101))
Ejemplo n.º 9
0
 def test_map_string(self):
     self.assertEqual(
         evaluate_with_prelude(parse_one(lex(u'(filter (lambda (x) (equal? x \'b\')) "abc")'))),
         String(list(u"b")))
Ejemplo n.º 10
0
 def test_map_bytestring(self):
     self.assertEqual(
         evaluate_with_prelude(parse_one(lex(u'(filter (lambda (x) (equal? x 98)) #bytes("abc"))'))),
         Bytestring([ord("b")]))
Ejemplo n.º 11
0
 def test_map_string(self):
     self.assertEqual(
         evaluate_with_prelude(parse_one(lex(u'(map (lambda (x) \'z\') "abc")'))),
         String(list(u"zzz")))
Ejemplo n.º 12
0
 def test_map_bytestring(self):
     self.assertEqual(
         evaluate_with_prelude(parse_one(lex(u'(map (lambda (x) (+ x 1)) #bytes("abc"))'))),
         Bytestring([ord(c) for c in "bcd"]))
Ejemplo n.º 13
0
 def test_for_each(self):
     self.assertEqual(
         evaluate_with_prelude(parse_one(lex(u"""(let (total 0 numbers (list 1 2 3 4))
         (for-each number numbers (set! total (+ total number)))
         total)"""))),
         Integer.fromint(10))