def test_code_do_count(self): i = '_code_do*count' # 1 before = { '_integer': [2], '_code': [get_instruction('_string_stack_depth')] } after = { '_exec': [[ 0, 1, JustInTimeInstruction('_code_from_exec'), get_instruction('_string_stack_depth'), JustInTimeInstruction('_code_do*range') ]] } self.assertTrue(t_u.run_test(before, after, i)) # 2 before = {'_integer': [2], '_code': [get_instruction('_integer_inc')]} after = { '_exec': [[ 0, 1, JustInTimeInstruction('_code_from_exec'), get_instruction('_integer_inc'), JustInTimeInstruction('_code_do*range') ]] } self.assertTrue(t_u.run_test(before, after, i))
def test_exec_when(self): i = '_exec_when' # 1 before = { '_boolean': [True], '_exec': [get_instruction('_string_stack_depth')] } after = {'_exec': [get_instruction('_string_stack_depth')]} self.assertTrue(t_u.run_test(before, after, i)) # 2 before = { '_boolean': [False], '_exec': [get_instruction('_string_stack_depth')] } after = {} self.assertTrue(t_u.run_test(before, after, i)) # 3 before = { '_boolean': [True], '_exec': [get_instruction('_string_empty')] } after = {'_exec': [get_instruction('_string_empty')]} self.assertTrue(t_u.run_test(before, after, i)) # 4 before = { '_boolean': [False], '_exec': [get_instruction('_string_empty')] } after = {} self.assertTrue(t_u.run_test(before, after, i))
def test_exec_do_times(self): i = '_exec_do*times' # 1 before = { '_integer': [2], '_exec': [get_instruction('_string_stack_depth')] } after = { '_exec': [[ 0, 1, JustInTimeInstruction('_exec_do*range'), [ JustInTimeInstruction('_integer_pop'), get_instruction('_string_stack_depth') ] ]] } self.assertTrue(t_u.run_test(before, after, i)) # 2 before = {'_integer': [2], '_exec': [get_instruction('_integer_inc')]} after = { '_exec': [[ 0, 1, JustInTimeInstruction('_exec_do*range'), [ JustInTimeInstruction('_integer_pop'), get_instruction('_integer_inc') ] ]] } self.assertTrue(t_u.run_test(before, after, i))
def test_pop(self): # 1 before = {'_integer': [1, 2, 3]} after = {'_integer': [1, 2]} self.assertTrue(t_u.run_test(before, after, '_integer_pop')) # 2 before = {'_boolean': [True]} after = {'_boolean': []} self.assertTrue(t_u.run_test(before, after, '_boolean_pop'))
def test_empty(self): # 1 before = {'_integer': []} after = {'_boolean': [True]} self.assertTrue(t_u.run_test(before, after, '_integer_empty')) # 2 before = {'_boolean': [True]} after = {'_boolean': [True, False]} self.assertTrue(t_u.run_test(before, after, '_boolean_empty'))
def test_eq(self): # 1 before = {'_string': ['A', 'B']} after = {'_boolean': [False]} self.assertTrue(t_u.run_test(before, after, '_string_eq')) # 2 before = {'_float': [1.23, 1.23]} after = {'_boolean': [True]} self.assertTrue(t_u.run_test(before, after, '_float_eq'))
def test_string_length(self): i = '_string_length' # 1 before = {'_string': ['']} after = {'_integer': [0]} self.assertTrue(t_u.run_test(before, after, i)) # 2 before = {'_string': ['Hello']} after = {'_integer': [5]} self.assertTrue(t_u.run_test(before, after, i))
def test_code_append(self): i = '_code_append' # 1 before = {'_code': [1, 2]} after = {'_code': [[2, 1]]} self.assertTrue(t_u.run_test(before, after, i)) # 2 before = {'_code': ["a", "b"]} after = {'_code': [["b", "a"]]} self.assertTrue(t_u.run_test(before, after, i))
def test_string_from_boolean(self): i = '_string_from_boolean' # 1 before = {'_boolean': [True]} after = {'_string': ['True']} self.assertTrue(t_u.run_test(before, after, i)) # 2 before = {'_boolean': [False]} after = {'_string': ['False']} self.assertTrue(t_u.run_test(before, after, i))
def test_string_from_float(self): i = '_string_from_float' # 1 before = {'_float': [7.0]} after = {'_string': ['7.0']} self.assertTrue(t_u.run_test(before, after, i)) # 2 before = {'_float': [-7.123]} after = {'_string': ['-7.123']} self.assertTrue(t_u.run_test(before, after, i))
def test_string_append_char(self): i = '_string_append_char' # 1 before = {'_char': [Character('C')], '_string': ['']} after = {'_string': ['C']} self.assertTrue(t_u.run_test(before, after, i)) # 2 before = {'_char': [Character('C')], '_string': ['AB']} after = {'_string': ['ABC']} self.assertTrue(t_u.run_test(before, after, i))
def test_string_empty_string(self): i = '_string_empty_string' # 1 before = {'_string': ['']} after = {'_boolean': [True]} self.assertTrue(t_u.run_test(before, after, i)) # 2 before = {'_string': ['Hello']} after = {'_boolean': [False]} self.assertTrue(t_u.run_test(before, after, i))
def test_string_char_at(self): i = '_string_char_at' # 1 before = {'_string': [''], '_integer': [2]} after = {'_string': [''], '_integer': [2]} self.assertTrue(t_u.run_test(before, after, i)) # 2 before = {'_string': ['Hello'], '_integer': [1]} after = {'_char': [Character('e')]} self.assertTrue(t_u.run_test(before, after, i))
def test_string_reverse(self): i = '_string_reverse' # 1 before = {'_string': ['']} after = {'_string': ['']} self.assertTrue(t_u.run_test(before, after, i)) # 2 before = {'_string': ['Hello']} after = {'_string': ['olleH']} self.assertTrue(t_u.run_test(before, after, i))
def test_code_nth(self): i = '_code_nth' # 1 before = {'_code': [['a', 'b', 'c']], '_integer': [1]} after = {'_code': ['b']} self.assertTrue(t_u.run_test(before, after, i)) # 2 before = {'_code': [['a', 'b', 'c']], '_integer': [4]} after = {'_code': ['b']} self.assertTrue(t_u.run_test(before, after, i))
def test_code_wrap(self): i = '_code_wrap' # 1 before = {'_code': [1]} after = {'_code': [[1]]} self.assertTrue(t_u.run_test(before, after, i)) # 2 before = {'_code': [[1]]} after = {'_code': [[[1]]]} self.assertTrue(t_u.run_test(before, after, i))
def test_float_from_boolean(self): i = '_float_from_boolean' # 1 before = {'_boolean': [False]} after = {'_float': [0.0]} self.assertTrue(t_u.run_test(before, after, i)) # 2 before = {'_boolean': [True]} after = {'_float': [1.0]} self.assertTrue(t_u.run_test(before, after, i))
def test_integer_from_boolean(self): i = '_integer_from_boolean' # 1 before = {'_boolean': [False]} after = {'_integer': [0]} self.assertTrue(t_u.run_test(before, after, i)) # 2 before = {'_boolean': [True]} after = {'_integer': [1]} self.assertTrue(t_u.run_test(before, after, i))
def test_string_from_integer(self): i = '_string_from_integer' # 1 before = {'_integer': [7]} after = {'_string': ['7']} self.assertTrue(t_u.run_test(before, after, i)) # 2 before = {'_integer': [-7]} after = {'_string': ['-7']} self.assertTrue(t_u.run_test(before, after, i))
def test_boolean_not(self): i = '_boolean_not' # 1 before = {'_boolean': [False]} after = {'_boolean': [True]} self.assertTrue(t_u.run_test(before, after, i)) # 2 before = {'_boolean': [True]} after = {'_boolean': [False]} self.assertTrue(t_u.run_test(before, after, i))
def test_code_noop(self): i = '_code_noop' # 1 before = {'_integer': [1]} self.assertTrue(t_u.run_test(before, before, i)) # 2 before = {'_string': ["HelloWorld"]} self.assertTrue(t_u.run_test(before, before, i)) # 3 before = {'_exec': [7]} self.assertTrue(t_u.run_test(before, before, i))
def test_float_from_integer(self): i = '_float_from_integer' # 1 before = {'_integer': [3]} after = {'_float': [3.0]} self.assertTrue(t_u.run_test(before, after, i)) # 2 before = {'_integer': [-7]} after = {'_float': [-7.0]} self.assertTrue(t_u.run_test(before, after, i)) # 3 before = {'_integer': [0]} after = {'_float': [0.0]} self.assertTrue(t_u.run_test(before, after, i))
def test_float_dec(self): i = '_float_dec' # 1 before = {'_float': [10.0]} after = {'_float': [9.0]} self.assertTrue(t_u.run_test(before, after, i)) # 2 before = {'_float': [-3.2]} after = {'_float': [-4.2]} self.assertTrue(t_u.run_test(before, after, i)) # 3 before = {'_float': [0.0]} after = {'_float': [-1.0]} self.assertTrue(t_u.run_test(before, after, i))
def test_integer_mult(self): i = '_integer_mult' # 1 before = {'_integer': [2, 3]} after = {'_integer': [6]} self.assertTrue(t_u.run_test(before, after, i)) # 2 before = {'_integer': [10, 0]} after = {'_integer': [0]} self.assertTrue(t_u.run_test(before, after, i)) # 3 before = {'_integer': [7, -1]} after = {'_integer': [-7]} self.assertTrue(t_u.run_test(before, after, i))
def test_float_div(self): i = '_float_div' # 1 before = {'_float': [10.0, 4.0]} after = {'_float': [2.5]} self.assertTrue(t_u.run_test(before, after, i)) # 2 before = {'_float': [4.2, -2.0]} after = {'_float': [-2.1]} self.assertTrue(t_u.run_test(before, after, i)) # 3 before = {'_float': [3.0, 0.0]} after = {'_float': [3.0, 0.0]} self.assertTrue(t_u.run_test(before, after, i))
def test_float_mult(self): i = '_float_mult' # 1 before = {'_float': [2.2, 3.7]} after = {'_float': [8.14]} self.assertTrue(t_u.run_test(before, after, i)) # 2 before = {'_float': [10.0, 0.0]} after = {'_float': [0.0]} self.assertTrue(t_u.run_test(before, after, i)) # 3 before = {'_float': [7.5, -1.1]} after = {'_float': [-8.25]} self.assertTrue(t_u.run_test(before, after, i))
def test_float_sub(self): i = '_float_sub' # 1 before = {'_float': [1.7, 7.8]} after = {'_float': [-6.1]} self.assertTrue(t_u.run_test(before, after, i)) # 2 before = {'_float': [0.0, 0.0]} after = {'_float': [0.0]} self.assertTrue(t_u.run_test(before, after, i)) # 3 before = {'_float': [999.999, -0.9]} after = {'_float': [1000.899]} self.assertTrue(t_u.run_test(before, after, i))
def test_float_add(self): i = '_float_add' # 1 before = {'_float': [1.7, 2.7]} after = {'_float': [4.4]} self.assertTrue(t_u.run_test(before, after, i)) # 2 before = {'_float': [0.0, 0.0]} after = {'_float': [0]} self.assertTrue(t_u.run_test(before, after, i)) # 3 before = {'_float': [999.999, -0.9]} after = {'_float': [999.099]} self.assertTrue(t_u.run_test(before, after, i))
def test_integer_sub(self): i = '_integer_sub' # 1 before = {'_integer': [1, 2]} after = {'_integer': [-1]} self.assertTrue(t_u.run_test(before, after, i)) # 2 before = {'_integer': [0, 0]} after = {'_integer': [0]} self.assertTrue(t_u.run_test(before, after, i)) # 3 before = {'_integer': [999999, -9]} after = {'_integer': [1000008]} self.assertTrue(t_u.run_test(before, after, i))
def test_integer_dec(self): i = '_integer_dec' # 1 before = {'_integer': [10]} after = {'_integer': [9]} self.assertTrue(t_u.run_test(before, after, i)) # 2 before = {'_integer': [-3]} after = {'_integer': [-4]} self.assertTrue(t_u.run_test(before, after, i)) # 3 before = {'_integer': [0]} after = {'_integer': [-1]} self.assertTrue(t_u.run_test(before, after, i))