@@ -387,143 +387,3 @@ TEST_F(ComplexSequenceWithMemoryTest, Conditions1ToFalse)
387
387
ASSERT_EQ (NodeStatus::IDLE, action_2.status ());
388
388
}
389
389
390
- TEST_F (ComplexSequenceWithMemoryTest, Conditions2ToFalse)
391
- {
392
- BT::NodeStatus state = root.executeTick ();
393
-
394
- condition_2.setExpectedResult (NodeStatus::FAILURE);
395
- state = root.executeTick ();
396
- // change in condition_2 does not affect the state of the tree,
397
- // since the seq_conditions was executed already
398
- ASSERT_EQ (NodeStatus::RUNNING, state);
399
- ASSERT_EQ (NodeStatus::SUCCESS, seq_conditions.status ());
400
- ASSERT_EQ (NodeStatus::IDLE, condition_1.status ());
401
- ASSERT_EQ (NodeStatus::IDLE, condition_2.status ());
402
- ASSERT_EQ (NodeStatus::RUNNING, seq_actions.status ());
403
- ASSERT_EQ (NodeStatus::RUNNING, action_1.status ());
404
- ASSERT_EQ (NodeStatus::IDLE, action_2.status ());
405
- }
406
-
407
- TEST_F (ComplexSequenceWithMemoryTest, Action1DoneSeq)
408
- {
409
- root.executeTick ();
410
-
411
- condition_2.setExpectedResult (NodeStatus::FAILURE);
412
- root.executeTick ();
413
-
414
- // change in condition_2 does not affect the state of the tree,
415
- // since the seq_conditions was executed already
416
- ASSERT_EQ (NodeStatus::SUCCESS, seq_conditions.status ());
417
- ASSERT_EQ (NodeStatus::IDLE, condition_1.status ());
418
- ASSERT_EQ (NodeStatus::IDLE, condition_2.status ());
419
- ASSERT_EQ (NodeStatus::RUNNING, seq_actions.status ());
420
- ASSERT_EQ (NodeStatus::RUNNING, action_1.status ());
421
- ASSERT_EQ (NodeStatus::IDLE, action_2.status ());
422
-
423
- std::this_thread::sleep_for (milliseconds (150 ));
424
- root.executeTick ();
425
-
426
- ASSERT_EQ (NodeStatus::SUCCESS, seq_conditions.status ());
427
- ASSERT_EQ (NodeStatus::IDLE, condition_1.status ());
428
- ASSERT_EQ (NodeStatus::IDLE, condition_2.status ());
429
- ASSERT_EQ (NodeStatus::RUNNING, seq_actions.status ());
430
- ASSERT_EQ (NodeStatus::SUCCESS, action_1.status ());
431
- ASSERT_EQ (NodeStatus::RUNNING, action_2.status ());
432
-
433
- std::this_thread::sleep_for (milliseconds (150 ));
434
- root.executeTick ();
435
-
436
- ASSERT_EQ (NodeStatus::SUCCESS, root.status ());
437
- ASSERT_EQ (NodeStatus::IDLE, seq_conditions.status ());
438
- ASSERT_EQ (NodeStatus::IDLE, condition_1.status ());
439
- ASSERT_EQ (NodeStatus::IDLE, condition_2.status ());
440
- ASSERT_EQ (NodeStatus::IDLE, seq_actions.status ());
441
- ASSERT_EQ (NodeStatus::IDLE, action_1.status ());
442
- ASSERT_EQ (NodeStatus::IDLE, action_2.status ());
443
- }
444
-
445
- TEST_F (ComplexSequenceWithMemoryTest, Action2FailureSeq)
446
- {
447
- root.executeTick ();
448
- std::this_thread::sleep_for (milliseconds (150 ));
449
- root.executeTick ();
450
-
451
- ASSERT_EQ (NodeStatus::SUCCESS, seq_conditions.status ());
452
- ASSERT_EQ (NodeStatus::IDLE, condition_1.status ());
453
- ASSERT_EQ (NodeStatus::IDLE, condition_2.status ());
454
- ASSERT_EQ (NodeStatus::RUNNING, seq_actions.status ());
455
- ASSERT_EQ (NodeStatus::SUCCESS, action_1.status ());
456
- ASSERT_EQ (NodeStatus::RUNNING, action_2.status ());
457
-
458
- action_2.setExpectedResult (NodeStatus::FAILURE);
459
- std::this_thread::sleep_for (milliseconds (150 ));
460
- root.executeTick ();
461
-
462
- // failure in action_2 does not affect the state of already
463
- // executed nodes (seq_conditions and action_1)
464
- ASSERT_EQ (NodeStatus::FAILURE, root.status ());
465
- ASSERT_EQ (NodeStatus::SUCCESS, seq_conditions.status ());
466
- ASSERT_EQ (NodeStatus::IDLE, condition_1.status ());
467
- ASSERT_EQ (NodeStatus::IDLE, condition_2.status ());
468
- ASSERT_EQ (NodeStatus::IDLE, seq_actions.status ());
469
- ASSERT_EQ (NodeStatus::SUCCESS, action_1.status ());
470
- ASSERT_EQ (NodeStatus::IDLE, action_2.status ());
471
-
472
- action_2.setExpectedResult (NodeStatus::SUCCESS);
473
- root.executeTick ();
474
-
475
- ASSERT_EQ (NodeStatus::SUCCESS, seq_conditions.status ());
476
- ASSERT_EQ (NodeStatus::IDLE, condition_1.status ());
477
- ASSERT_EQ (NodeStatus::IDLE, condition_2.status ());
478
- ASSERT_EQ (NodeStatus::RUNNING, seq_actions.status ());
479
- ASSERT_EQ (NodeStatus::SUCCESS, action_1.status ());
480
- ASSERT_EQ (NodeStatus::RUNNING, action_2.status ());
481
-
482
- std::this_thread::sleep_for (milliseconds (150 ));
483
- root.executeTick ();
484
-
485
- ASSERT_EQ (NodeStatus::SUCCESS, root.status ());
486
- ASSERT_EQ (NodeStatus::IDLE, seq_conditions.status ());
487
- ASSERT_EQ (NodeStatus::IDLE, condition_1.status ());
488
- ASSERT_EQ (NodeStatus::IDLE, condition_2.status ());
489
- ASSERT_EQ (NodeStatus::IDLE, seq_actions.status ());
490
- ASSERT_EQ (NodeStatus::IDLE, action_1.status ());
491
- ASSERT_EQ (NodeStatus::IDLE, action_2.status ());
492
- }
493
-
494
- TEST_F (ComplexSequenceWithMemoryTest, Action2HaltSeq)
495
- {
496
- root.executeTick ();
497
- std::this_thread::sleep_for (milliseconds (150 ));
498
- root.executeTick ();
499
-
500
- root.halt ();
501
-
502
- ASSERT_EQ (NodeStatus::IDLE, seq_conditions.status ());
503
- ASSERT_EQ (NodeStatus::IDLE, condition_1.status ());
504
- ASSERT_EQ (NodeStatus::IDLE, condition_2.status ());
505
- ASSERT_EQ (NodeStatus::IDLE, seq_actions.status ());
506
- ASSERT_EQ (NodeStatus::IDLE, action_1.status ());
507
- ASSERT_EQ (NodeStatus::IDLE, action_2.status ());
508
-
509
- root.executeTick ();
510
-
511
- // tree retakes execution from action_2
512
- ASSERT_EQ (NodeStatus::IDLE, seq_conditions.status ());
513
- ASSERT_EQ (NodeStatus::IDLE, condition_1.status ());
514
- ASSERT_EQ (NodeStatus::IDLE, condition_2.status ());
515
- ASSERT_EQ (NodeStatus::RUNNING, seq_actions.status ());
516
- ASSERT_EQ (NodeStatus::IDLE, action_1.status ());
517
- ASSERT_EQ (NodeStatus::RUNNING, action_2.status ());
518
-
519
- std::this_thread::sleep_for (milliseconds (150 ));
520
- root.executeTick ();
521
-
522
- ASSERT_EQ (NodeStatus::SUCCESS, root.status ());
523
- ASSERT_EQ (NodeStatus::IDLE, seq_conditions.status ());
524
- ASSERT_EQ (NodeStatus::IDLE, condition_1.status ());
525
- ASSERT_EQ (NodeStatus::IDLE, condition_2.status ());
526
- ASSERT_EQ (NodeStatus::IDLE, seq_actions.status ());
527
- ASSERT_EQ (NodeStatus::IDLE, action_1.status ());
528
- ASSERT_EQ (NodeStatus::IDLE, action_2.status ());
529
- }
0 commit comments