コード例 #1
0
ファイル: test_code.py プロジェクト: lacava/pyshgp
 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))
コード例 #2
0
ファイル: test_code.py プロジェクト: lacava/pyshgp
 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))
コード例 #3
0
ファイル: test_code.py プロジェクト: lacava/pyshgp
 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))
コード例 #4
0
 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'))
コード例 #5
0
 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'))
コード例 #6
0
 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'))
コード例 #7
0
ファイル: test_string.py プロジェクト: lacava/pyshgp
 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))
コード例 #8
0
ファイル: test_code.py プロジェクト: lacava/pyshgp
 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))
コード例 #9
0
ファイル: test_string.py プロジェクト: lacava/pyshgp
 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))
コード例 #10
0
ファイル: test_string.py プロジェクト: lacava/pyshgp
 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))
コード例 #11
0
ファイル: test_string.py プロジェクト: lacava/pyshgp
 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))
コード例 #12
0
ファイル: test_string.py プロジェクト: lacava/pyshgp
 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))
コード例 #13
0
ファイル: test_string.py プロジェクト: lacava/pyshgp
 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))
コード例 #14
0
ファイル: test_string.py プロジェクト: lacava/pyshgp
 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))
コード例 #15
0
ファイル: test_code.py プロジェクト: lacava/pyshgp
 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))
コード例 #16
0
ファイル: test_code.py プロジェクト: lacava/pyshgp
 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))
コード例 #17
0
ファイル: test_numbers.py プロジェクト: lacava/pyshgp
 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))
コード例 #18
0
ファイル: test_numbers.py プロジェクト: lacava/pyshgp
 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))
コード例 #19
0
ファイル: test_string.py プロジェクト: lacava/pyshgp
 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))
コード例 #20
0
ファイル: test_boolean.py プロジェクト: lacava/pyshgp
 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))
コード例 #21
0
ファイル: test_code.py プロジェクト: lacava/pyshgp
 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))
コード例 #22
0
ファイル: test_numbers.py プロジェクト: lacava/pyshgp
 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))
コード例 #23
0
ファイル: test_numbers.py プロジェクト: lacava/pyshgp
 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))
コード例 #24
0
ファイル: test_numbers.py プロジェクト: lacava/pyshgp
 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))
コード例 #25
0
ファイル: test_numbers.py プロジェクト: lacava/pyshgp
 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))
コード例 #26
0
ファイル: test_numbers.py プロジェクト: lacava/pyshgp
 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))
コード例 #27
0
ファイル: test_numbers.py プロジェクト: lacava/pyshgp
 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))
コード例 #28
0
ファイル: test_numbers.py プロジェクト: lacava/pyshgp
 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))
コード例 #29
0
ファイル: test_numbers.py プロジェクト: lacava/pyshgp
 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))
コード例 #30
0
ファイル: test_numbers.py プロジェクト: lacava/pyshgp
 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))