@@ -57,18 +57,18 @@ TEST_CASE("Test host SenseTask instruction after a rewarded task", "[sgp]"){
5757 host_hw.Reset ();
5858 host_hw.SetProgram (host_program);
5959 world.AssignNewEnvIO (host_hw.GetCPUState ());
60-
61- // NOT is currently rewarded.
62- REQUIRE (world.GetTaskEnv ().GetHostTaskReq (not_task_id).task_value > 0 );
63-
60+
61+ // NOT is currently not rewarded.
62+ REQUIRE (world.GetTaskEnv ().GetHostTaskReq (not_task_id).task_value < 0 );
63+
6464 // Initial register values
6565 host_hw.SetRegisters ({3 , 2 , 5 });
6666
6767 // Run host program
6868 host_hw.RunCPUStep (4 );
6969
70- THEN (" SenseTask puts a 1 into register 1" ){
71- REQUIRE (host_hw.GetRegister (1 ) == 1 );
70+ THEN (" SenseTask puts a 0 into register 1" ){
71+ REQUIRE (host_hw.GetRegister (1 ) == 0 );
7272 }
7373 }
7474}
@@ -110,22 +110,24 @@ TEST_CASE("Test host SenseTask instruction after a punished task", "[sgp]"){
110110 host_hw.SetProgram (host_program);
111111 world.AssignNewEnvIO (host_hw.GetCPUState ());
112112
113- // NAND is currently punished.
114- REQUIRE (world.GetTaskEnv ().GetHostTaskReq (nand_task_id).task_value < 0 );
113+ // NAND is not currently punished.
114+ REQUIRE (world.GetTaskEnv ().GetHostTaskReq (nand_task_id).task_value > 0 );
115115
116+
117+
116118 // Initial register values
117119 host_hw.SetRegisters ({7 , 12 , 9 });
118120
119121 // Run host program
120122 host_hw.RunCPUStep (5 );
121-
122- THEN (" SenseTask puts a 0 into register 1" ){
123- REQUIRE (host_hw.GetRegister (1 ) == 0 );
123+
124+ THEN (" SenseTask puts a 1 into register 1" ){
125+ REQUIRE (host_hw.GetRegister (1 ) == 1 );
124126 }
125127 }
126128}
127129
128- TEST_CASE (" Test symbiont SenseTask instruction after a rewarded task" , " [sgp]" ){
130+ TEST_CASE (" Test symbiont SenseTask instruction after a punished task" , " [sgp]" ){
129131 sgpmode::SymConfigSGP config;
130132 config.CYCLES_PER_UPDATE (0 );
131133 config.SEED (61 );
@@ -149,7 +151,7 @@ TEST_CASE("Test symbiont SenseTask instruction after a rewarded task", "[sgp]"){
149151 // setup correct reward/punishment values for update 0
150152 world.Update ();
151153
152- WHEN (" A symbiont runs a task which is rewarded and then the SenseTask instruction" ){
154+ WHEN (" A symbiont runs a task which is punished and then the SenseTask instruction" ){
153155 program_t sym_program;
154156 prog_builder.AddStartAnchor (sym_program);
155157 prog_builder.AddInst (sym_program, " IO" , 0 );
@@ -159,22 +161,22 @@ TEST_CASE("Test symbiont SenseTask instruction after a rewarded task", "[sgp]"){
159161 sym_hw.SetProgram (sym_program);
160162 world.AssignNewEnvIO (sym_hw.GetCPUState ());
161163
162- // NOT is currently rewarded.
163- REQUIRE (world.GetTaskEnv ().GetHostTaskReq (not_task_id).task_value > 0 );
164-
164+ // NOT is currently punished.
165+ REQUIRE (world.GetTaskEnv ().GetHostTaskReq (not_task_id).task_value < 0 );
166+
165167 // Initial register values
166168 sym_hw.SetRegisters ({3 , 2 , 5 });
167169
168170 // Run symbiont program
169- sym_hw.RunCPUStep (4 );
170-
171- THEN (" SenseTask puts a 1 into register 1" ){
172- REQUIRE (sym_hw.GetRegister (1 ) == 1 );
171+ sym_hw.RunCPUStep (4 );
172+
173+ THEN (" SenseTask puts a 0 into register 1" ){
174+ REQUIRE (sym_hw.GetRegister (1 ) == 0 );
173175 }
174176 }
175177}
176178
177- TEST_CASE (" Test symbiont SenseTask instruction after a punished task" , " [sgp]" ){
179+ TEST_CASE (" Test symbiont SenseTask instruction after a rewarded task" , " [sgp]" ){
178180 sgpmode::SymConfigSGP config;
179181 config.CYCLES_PER_UPDATE (0 );
180182 config.SEED (61 );
@@ -198,7 +200,7 @@ TEST_CASE("Test symbiont SenseTask instruction after a punished task", "[sgp]"){
198200 // setup correct reward/punishment values for update 0
199201 world.Update ();
200202
201- WHEN (" A symbiont runs a task which is punished and then the SenseTask instruction" ) {
203+ WHEN (" A symbiont runs a task which is rewarded and then the SenseTask instruction" ) {
202204 program_t sym_program;
203205 prog_builder.AddStartAnchor (sym_program);
204206 prog_builder.AddInst (sym_program, " IO" , 0 );
@@ -209,17 +211,17 @@ TEST_CASE("Test symbiont SenseTask instruction after a punished task", "[sgp]"){
209211 sym_hw.SetProgram (sym_program);
210212 world.AssignNewEnvIO (sym_hw.GetCPUState ());
211213
212- // NAND is currently punished.
213- REQUIRE (world.GetTaskEnv ().GetHostTaskReq (nand_task_id).task_value < 0 );
214-
214+ // NAND is currently rewarded.
215+ REQUIRE (world.GetTaskEnv ().GetHostTaskReq (nand_task_id).task_value > 0 );
216+
215217 // Initial register values
216218 sym_hw.SetRegisters ({7 , 12 , 9 });
217219
218220 // run symbiont program
219221 sym_hw.RunCPUStep (5 );
220-
221- THEN (" SenseTask puts a 0 into register 1" ){
222- REQUIRE (sym_hw.GetRegister (1 ) == 0 );
222+
223+ THEN (" SenseTask puts a 1 into register 1" ){
224+ REQUIRE (sym_hw.GetRegister (1 ) == 1 );
223225 }
224226 }
225227}
0 commit comments