def test_list_error(self): """ list error """ the_string = " a ]" compiler = Compiler() try: compiler.compile_list(the_string) except CompilerError, err: self.assertEqual(err.message, 'Expression " a ]" cannot be converted as a list.')
def test_list_error_2(self): """ unsupported char @ """ the_string = " a @" compiler = Compiler() try: compiler.compile_list(the_string) except CompilerError, err: self.assertEqual(err.message, 'Unsupported token (type: @, value : OP) (line=1,col=3).')
def test_list_unicode_val(self): """ list unicode val """ the_string = "[ u'[Gmail]/Чаты', 'z' ]".decode('utf-8') #to be in the same conditions as the conf object need to decode utf-8 as # it is done automatically with the os.open(...., 'uft-8') compiler = Compiler() compiler.compile_list(the_string) the_result = compiler.compile_list(the_string) self.assertEqual(the_result, [ u'[Gmail]/Чаты', 'z' ])
def test_list_without_bracket_test_2(self): #pylint: disable=C0103 """ list without bracket test with a list inside """ the_string = " 'a', b, ['a thing', 2]" compiler = Compiler() the_result = compiler.compile_list(the_string) self.assertEqual(the_result, ['a', 'b', ['a thing', 2] ])
def test_negative_number_test(self): """ a negative number test """ the_string = " [ '-10.4', 1.435, 3 ]" compiler = Compiler() the_result = compiler.compile_list(the_string) self.assertEqual(the_result, [ '-10.4', 1.435, 3])
def test_list_without_bracket_test(self): """ simple list without bracket test """ the_string = " 'a', b" compiler = Compiler() the_result = compiler.compile_list(the_string) self.assertEqual(the_result, ['a', 'b'])
def test_simple_list_test(self): """ a first simple test with space and indent, dedents to eat""" the_string = " [ 'a', 1.435, 3 ]" compiler = Compiler() the_result = compiler.compile_list(the_string) self.assertEqual(the_result, [ 'a', 1.435, 3])
def test_list_with_dict(self): """ list with dict """ the_string = "['a',1,'b',{2:3,4:5} ]" compiler = Compiler() the_result = compiler.compile_list(the_string) self.assertEqual(the_result, ['a', 1, 'b', { 2 : 3 , 4 : 5} ])
def test_special_character_in_string(self):#pylint: disable=C0103 """ simple list without bracket test """ the_string = " 'a@', b" compiler = Compiler() the_result = compiler.compile_list(the_string) self.assertEqual(the_result, ['a@','b'])
def test_imbricated_lists_test(self): """ multiple lists within lists """ the_string = "[a,b, [1,2,3,4, [456,6,'absdef'], 234, 2.456 ], aqwe, done]" compiler = Compiler() the_result = compiler.compile_list(the_string) self.assertEqual(the_result, ["a", "b", [1, 2, 3, 4, [456, 6, "absdef"], 234, 2.456], "aqwe", "done"])
def test_everything(self): """ everything """ the_string = "['a',1,'b',{2:3,4:[1,'hello', no quotes, [1,2,3,{1:2,3:4}]]} ]" compiler = Compiler() the_result = compiler.compile_list(the_string) self.assertEqual(the_result, ["a", 1, "b", {2: 3, 4: [1, "hello", "no quotes", [1, 2, 3, {1: 2, 3: 4}]]}])
def test_imbricated_lists_test(self): """ multiple lists within lists """ the_string = "[a,b, [1,2,3,4, [456,6,'absdef'], 234, 2.456 ], aqwe, done]" compiler = Compiler() the_result = compiler.compile_list(the_string) self.assertEqual(the_result, ['a', 'b', [1, 2, 3, 4, [456, 6, 'absdef'], 234, 2.456 ]\ , 'aqwe', 'done'])
def test_everything(self): """ everything """ the_string = "['a',1,'b',{2:3,4:[1,'hello', no quotes, [1,2,3,{1:2,3:4}]]} ]" compiler = Compiler() the_result = compiler.compile_list(the_string) self.assertEqual(the_result, ['a', 1, 'b', \ {2 : 3, \ 4: [1, 'hello', 'no quotes', [1, 2, 3, {1:2, 3:4 }]]} ])