RKH
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
test_smTransition_runner.c
Go to the documentation of this file.
1 /*
2  * --------------------------------------------------------------------------
3  *
4  * Framework RKH
5  * -------------
6  *
7  * State-machine framework for reactive embedded systems
8  *
9  * Copyright (C) 2010 Leandro Francucci.
10  * All rights reserved. Protected by international copyright laws.
11  *
12  *
13  * RKH is free software: you can redistribute it and/or modify it under the
14  * terms of the GNU General Public License as published by the Free Software
15  * Foundation, either version 3 of the License, or (at your option) any
16  * later version.
17  *
18  * RKH is distributed in the hope that it will be useful, but WITHOUT ANY
19  * WARRANTY; without even the implied warranty of MERCHANTABILITY or
20  * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
21  * more details.
22  *
23  * You should have received a copy of the GNU General Public License along
24  * with RKH, see copying.txt file.
25  *
26  * Contact information:
27  * RKH web site: http://sourceforge.net/projects/rkh-reactivesys/
28  * e-mail: francuccilea@gmail.com
29  * ---------------------------------------------------------------------------
30  */
31 
39 /* -------------------------- Development history -------------------------- */
40 /*
41  * 2016.12.15 LeFr v2.4.05 ---
42  */
43 
44 /* -------------------------------- Authors -------------------------------- */
45 /*
46  * LeFr Leandro Francucci francuccilea@gmail.com
47  */
48 
49 /* --------------------------------- Notes --------------------------------- */
50 /* ----------------------------- Include files ----------------------------- */
51 
52 #include "unity_fixture.h"
53 
54 /* ----------------------------- Local macros ------------------------------ */
55 /* ------------------------------- Constants ------------------------------- */
56 /* ---------------------------- Local data types --------------------------- */
57 /* ---------------------------- Global variables --------------------------- */
58 /* ---------------------------- Local variables ---------------------------- */
59 /* ----------------------- Local function prototypes ----------------------- */
60 /* ---------------------------- Local functions ---------------------------- */
61 /* ---------------------------- Global functions --------------------------- */
62 
63 TEST_GROUP_RUNNER(transition)
64 {
65  RUN_TEST_CASE(transition, firstStateAfterInit);
66  RUN_TEST_CASE(transition, simpleToSimpleAtEqualLevel);
67  RUN_TEST_CASE(transition, simpleToSimpleFromHighToLowLevel);
68  RUN_TEST_CASE(transition, simpleToSimpleFromLowToHighLevel);
69  RUN_TEST_CASE(transition, simpleToCompositeAtEqualLevel);
70  RUN_TEST_CASE(transition, simpleToCompositeFromHighToLowLevel);
71  RUN_TEST_CASE(transition, simpleToCompositeFromLowToHighLevel);
72  RUN_TEST_CASE(transition, compositeToSimpleAtEqualLevel);
73  RUN_TEST_CASE(transition, compositeToSimpleFromHighToLowLevel);
74  RUN_TEST_CASE(transition, compositeToSimpleFromLowToHighLevel);
75  RUN_TEST_CASE(transition, compositeToCompositeAtEqualLevel);
76  RUN_TEST_CASE(transition, compositeToCompositeFromHighToLowLevel);
77  RUN_TEST_CASE(transition, compositeToCompositeFromLowToHighLevel);
78  RUN_TEST_CASE(transition, loopSimpleStateOnTop);
79  RUN_TEST_CASE(transition, loopNestedSimpleState);
80  RUN_TEST_CASE(transition, loopCompositeStateOnTop);
81  RUN_TEST_CASE(transition, loopNestedCompositeState);
82  RUN_TEST_CASE(transition, internalInSimpleState);
83  RUN_TEST_CASE(transition, internalInCompositeState);
84  RUN_TEST_CASE(transition, fails_EventNotFound);
85  RUN_TEST_CASE(transition, fails_GuardFalse);
86  RUN_TEST_CASE(transition, fails_ExceededHierarchicalLevel);
87  RUN_TEST_CASE(transition, multipleEnabledTrn_FiringFirstTrueGuard);
88  RUN_TEST_CASE(transition, multipleEnabledTrn_FiringFirstEmptyGuard);
89  RUN_TEST_CASE(transition, defaultTrnWithAssociatedEffect);
90  RUN_TEST_CASE(transition, generatedCompletionEventBySimpleState);
91  RUN_TEST_CASE(transition, generatedCompletionEventByFinalState);
92  RUN_TEST_CASE(transition, syncDispatchingToStateMachine);
93 }
94 
95 /* ------------------------------ End of file ------------------------------ */