def test_tosexp_tuple_as(): yield (eq_, tosexp(('a', 'b')), '("a" "b")') yield (eq_, tosexp(('a', 'b'), tuple_as='array'), '["a" "b"]') yield (eq_, tosexp([('a', 'b')]), '(("a" "b"))') yield (eq_, tosexp([('a', 'b')], tuple_as='array'), '(["a" "b"])') yield (eq_, tosexp(Quoted(('a', ))), '\'("a")') yield (eq_, tosexp(Quoted(('a', )), tuple_as='array'), '\'["a"]')
def test_tosexp_str_as(): yield (eq_, tosexp('a', str_as='symbol'), 'a') yield (eq_, tosexp(['a'], str_as='symbol'), '(a)') yield (eq_, tosexp('a'), '"a"') yield (eq_, tosexp(['a']), '("a")') yield (eq_, tosexp(Quoted('a')), '\'"a"') yield (eq_, tosexp(Quoted(['a']), str_as='symbol'), '\'(a)') yield (eq_, tosexp([Quoted('a')], str_as='symbol'), '(\'a)') yield (eq_, tosexp(Quoted('a'), str_as='symbol'), '\'a') yield (eq_, tosexp(Quoted(['a'])), '\'("a")') yield (eq_, tosexp([Quoted('a')]), '(\'"a")')
### Test utils def compare_parsed(sexp, obj): eq_(parse(sexp), obj) ### Test cases data_identity = [ Symbol('a'), 'a', [Symbol('a')], ['a'], Quoted(Symbol('a')), Quoted('a'), Quoted([Symbol('a')]), Quoted(['a']), [Symbol('a'), Symbol('b')], [Symbol('a'), [Symbol('b')]], [Symbol('a'), Quoted([Symbol('b')])], [Symbol('a'), Quoted(Symbol('b')), Symbol('c')], [Symbol('a'), Quoted([Symbol('b')]), Symbol('c')], [Symbol('a'), Quoted(Symbol('b')), Quoted(Symbol('c')), Symbol('d')], [Symbol('a'),