TriggerExpressionPrecedenceTest.cc 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. /**
  2. * Copyright (c) 2017 committers of YAKINDU and others.
  3. * All rights reserved. This program and the accompanying materials
  4. * are made available under the terms of the Eclipse Public License v1.0
  5. * which accompanies this distribution, and is available at
  6. * http://www.eclipse.org/legal/epl-v10.html
  7. *
  8. * Contributors:
  9. * committers of YAKINDU - initial API and implementation
  10. */
  11. #include "gtest/gtest.h"
  12. #include "TriggerExpressionPrecedence.h"
  13. TriggerExpressionPrecedence handle;
  14. class StatemachineTest : public ::testing::Test{
  15. protected:
  16. virtual void SetUp() {
  17. triggerExpressionPrecedence_init(&handle);
  18. }
  19. };
  20. TEST_F(StatemachineTest, unsatisfiedTriggerAndFGuardFalseOrFalse) {
  21. triggerExpressionPrecedence_enter(&handle);
  22. triggerExpressionPrecedenceIface_set_c1(&handle,false);
  23. triggerExpressionPrecedenceIface_set_c2(&handle,false);
  24. triggerExpressionPrecedence_runCycle(&handle);
  25. EXPECT_TRUE(!triggerExpressionPrecedenceIface_get_e1_transition(&handle));
  26. }
  27. TEST_F(StatemachineTest, unsatisfiedTriggerAndFGuardTrueOrFalse) {
  28. triggerExpressionPrecedence_enter(&handle);
  29. triggerExpressionPrecedenceIface_set_c1(&handle,true);
  30. triggerExpressionPrecedenceIface_set_c2(&handle,false);
  31. triggerExpressionPrecedence_runCycle(&handle);
  32. EXPECT_TRUE(!triggerExpressionPrecedenceIface_get_e1_transition(&handle));
  33. }
  34. TEST_F(StatemachineTest, unsatisfiedTriggerAndFGuardFalseOrTrue) {
  35. triggerExpressionPrecedence_enter(&handle);
  36. triggerExpressionPrecedenceIface_set_c1(&handle,false);
  37. triggerExpressionPrecedenceIface_set_c2(&handle,true);
  38. triggerExpressionPrecedence_runCycle(&handle);
  39. EXPECT_TRUE(!triggerExpressionPrecedenceIface_get_e1_transition(&handle));
  40. }
  41. TEST_F(StatemachineTest, unsatisfiedTriggerAndFGuardTrueOrTrue) {
  42. triggerExpressionPrecedence_enter(&handle);
  43. triggerExpressionPrecedenceIface_set_c1(&handle,true);
  44. triggerExpressionPrecedenceIface_set_c2(&handle,true);
  45. triggerExpressionPrecedence_runCycle(&handle);
  46. EXPECT_TRUE(!triggerExpressionPrecedenceIface_get_e1_transition(&handle));
  47. }