Commit f8f00d3d authored by garciay's avatar garciay
Browse files

MAPEM/SPATEM TCs Review

Add TestControl modules
parent 65a82fa0
Loading
Loading
Loading
Loading
+60 −20
Original line number Diff line number Diff line
@@ -21,7 +21,7 @@ module ItsMapem_TestCases {
            /**
             * @desc Check that protocolVersion is set to 1 and messageID is set to 4
             * <pre>
             * Pics Selection: PICS_MAPEM_GENERATION
             * Pics Selection: PICS_RSU_ROLE and PICS_MAPEM_GENERATION
             * Initial conditions: 
             *   with {
             *        the IUT being in the "initial state"
@@ -60,7 +60,7 @@ module ItsMapem_TestCases {
            /**
             * @desc Check that IVI Service generates a new MAPEM on reception of a valid AppMAPEM_Trigger request
             * <pre>
             * Pics Selection: PICS_MAPEM_GENERATION
             * Pics Selection: PICS_RSU_ROLE and PICS_MAPEM_GENERATION
             * Initial conditions: 
             *   with {
             *        the IUT being in the "initial state"
@@ -88,9 +88,9 @@ module ItsMapem_TestCases {
            } // End of testcase TC_IS_RLT_EVGN_BV_01
            
            /**
             * @desc Check that IVI Service generates a new MAPEM on reception of a valid AppMAPEM_Trigger request
             * @desc Check that RLT Service transmits new content
             * <pre>
             * Pics Selection: PICS_MAPEM_GENERATION
             * Pics Selection: PICS_RSU_ROLE and PICS_MAPEM_GENERATION
             * Initial conditions: 
             *   with {
             *        the IUT being in the "initial state"
@@ -127,6 +127,46 @@ module ItsMapem_TestCases {
                
            } // End of testcase TC_IS_RLT_EVGN_BV_02
            
            /**
             * @desc Check that RLT Service transmits fragmented MAPEM when the message size exceeds the allowed message length 
             * <pre>
             * Pics Selection: PICS_RSU_ROLE and PICS_MAPEM_GENERATION
             * Initial conditions: 
             *   with {
             *        the IUT being in the "initial state"
             *        and the IUT has sent a MAPEM
             *    }
             * Expected behaviour:
             *    ensure that {
             *        when { 
             *            the IUT is alerted about a new content
             *                indicating a new value which exceeds the allowed message length 
             *        }
             *        then {
             *            the IUT sends a first valid MAPEM
             *            containing map
             *                containing LayerType
             *                and containing LayerID
             *                    indication a value LID_1
             *            and the IUT sends a second valid MAPEM
             *                containing map
             *                    containing LayerType
             *                    and containing LayerID
             *                        indication a value LID_2 = LID_1 + 1
             *        }
             *    }
             * </pre>
             * 
             * @version   1.0.4
             * @see       ETSI TS 103 191-2 v0.0.1 TP_IS_RLT_EVGN_BV_03
             * @reference ETSI TS 103 301 V1.0.4 Clause 6.4.1
             */
            testcase TC_IS_RLT_EVGN_BV_03 () runs on ItsMapemSpatem system ItsMapemSpatemSystem {
                
                f_IS_RLT_EVGN_BV_03();
                
            } // End of testcase TC_IS_RLT_EVGN_BV_03
            
        } // End of group mapeEventGeneration
        
        group mapeCommunication {
@@ -134,7 +174,7 @@ module ItsMapem_TestCases {
            /**
             * @desc Check that the RLT Service transmits continuously both MAPEM and SPATEM
             * <pre>
             * Pics Selection: PICS_MAPEM_GENERATION and PICS_SPATEM_GENERATION
             * Pics Selection: PICS_RSU_ROLE and PICS_MAPEM_GENERATION and PICS_SPATEM_GENERATION
             * Initial conditions: 
             *   with {
             *        the IUT being in the "initial state"
@@ -166,7 +206,7 @@ module ItsMapem_TestCases {
            /**
             * @desc Check that MAPEM uses BTP_B packet
             * <pre>
             * Pics Selection: PICS_MAPEM_GENERATION
             * Pics Selection: PICS_RSU_ROLE and PICS_MAPEM_GENERATION
             * Initial conditions: 
             *   with {
             *        the IUT being in the "initial state"
@@ -197,7 +237,7 @@ module ItsMapem_TestCases {
            /**
             * @desc Check that the destination port for MAPEM is set to 2003
             * <pre>
             * Pics Selection: PICS_MAPEM_GENERATION
             * Pics Selection: PICS_RSU_ROLE and PICS_MAPEM_GENERATION
             * Initial conditions: 
             *   with {
             *        the IUT being in the "initial state"
@@ -230,7 +270,7 @@ module ItsMapem_TestCases {
            /**
             * @desc Check that TLM service encapsulates MAPEM in a GBC with the HeaderType field set to the value of 4
             * <pre>
             * Pics Selection: PICS_MAPEM_GENERATION
             * Pics Selection: PICS_RSU_ROLE and PICS_MAPEM_GENERATION
             * Initial conditions: 
             *   with {
             *        the IUT being in the "initial state"
@@ -270,7 +310,7 @@ module ItsMapem_TestCases {
        /**
         * @desc Check that the IUT can successfully process all mandatory fields of MAPEM received
         * <pre>
         * Pics Selection: not PICS_MAPEM_RECEPTION
         * Pics Selection: not PICS_RSU_ROLE and PICS_MAPEM_RECEPTION
         * Initial conditions: 
         *   with {
         *        the IUT being in the "initial state"
@@ -305,7 +345,7 @@ module ItsMapem_TestCases {
//        /**
//        * @desc Verify that when sending a MapData message the DSRCmsgSubID is set to value 1.
//        * <pre>
//        * Pics Selection: PICS_RSU
//        * Pics Selection: PICS_RSU_ROLE
//        * Initial conditions: 
//        *   with {
//        *        the IUT being in the "initial state"
@@ -365,7 +405,7 @@ module ItsMapem_TestCases {
//        /**
//        * @desc Verify that when sending a SPATEM the DSRCmsgSubID is set to value 1.
//        * <pre>
//        * Pics Selection: PICS_RSU
//        * Pics Selection: PICS_RSU_ROLE
//        * Initial conditions: 
//        *    with {
//        *        the IUT being in the "initial state"
@@ -429,7 +469,7 @@ module ItsMapem_TestCases {
//        * @desc Repetition < 10s. Verify that: when the IUT is composing a new message with the same content as the most recent message
//        * with the same DSRCmsgID, and less than 10 seconds have elapsed since it sent the previous message, the IUT uses the same MsgCount value.
//        * <pre>
//        * Pics Selection: PICS_RSU
//        * Pics Selection: PICS_RSU_ROLE
//        * Initial conditions: 
//        *    with {
//        *        the IUT being in the "initial state"
@@ -513,7 +553,7 @@ module ItsMapem_TestCases {
//        * @desc Repetition >= 10s Verify that: when the IUT is composing a new message with the same content as the most recent message
//        * with the same DSRCmsgID, and at least 10 seconds have elapsed since it sent the previous message, the IUT sets the MsgCount to any valid value.
//        * <pre>
//        * Pics Selection: PICS_RSU
//        * Pics Selection: PICS_RSU_ROLE
//        * Initial conditions: 
//        *    with {
//        *        the IUT being in the "initial state"
@@ -596,7 +636,7 @@ module ItsMapem_TestCases {
//        /**
//        * @desc Verify that the MsgCRC (if present) is the last data element of the MapData message.
//        * <pre>
//        * Pics Selection: PICS_RSU
//        * Pics Selection: PICS_RSU_ROLE
//        * Initial conditions: 
//        *    with {
//        *        the IUT being in the "initial state"
@@ -663,7 +703,7 @@ module ItsMapem_TestCases {
//        /**
//        * @desc Verify that the LayerType is not contained in the MapData message.
//        * <pre>
//        * Pics Selection: PICS_RSU
//        * Pics Selection: PICS_RSU_ROLE
//        * Initial conditions: 
//        *    with {
//        *        the IUT being in the "initial state"
@@ -722,7 +762,7 @@ module ItsMapem_TestCases {
//        /**
//        * @desc Verify that the IntersectionReferenceID contained in the SPATEM correspond to a previously received intersection MAPEM.
//        * <pre>
//        * Pics Selection: PICS_RSU
//        * Pics Selection: PICS_RSU_ROLE
//        * Initial conditions: 
//        *    with {
//        *        the IUT being in the "initial state"
@@ -814,7 +854,7 @@ module ItsMapem_TestCases {
//        /**
//        * @desc Verify that the MapData message is well formatted.
//        * <pre>
//        * Pics Selection: PICS_RSU
//        * Pics Selection: PICS_RSU_ROLE
//        * Initial conditions: 
//        *    with {
//        *        the IUT being in the "initial state"
@@ -876,7 +916,7 @@ module ItsMapem_TestCases {
//        /**
//        * @desc Verify that the SPATEM is well formatted.
//        * <pre>
//        * Pics Selection: PICS_RSU
//        * Pics Selection: PICS_RSU_ROLE
//        * Initial conditions: 
//        *    with {
//        *        the IUT being in the "initial state"
@@ -937,7 +977,7 @@ module ItsMapem_TestCases {
//        /**
//        * @desc Verify that when sending a MapData message, the IUT encapsulates the message into a GN SHB message.
//        * <pre>
//        * Pics Selection: PICS_RSU
//        * Pics Selection: PICS_RSU_ROLE
//        * Initial conditions: 
//        *    with {
//        *        the IUT being in the "initial state"
@@ -998,7 +1038,7 @@ module ItsMapem_TestCases {
//        /**
//        * @desc Verify that when sending a SPATEM message, the IUT encapsulates the message into a GN SHB message.
//        * <pre>
//        * Pics Selection: PICS_RSU
//        * Pics Selection: PICS_RSU_ROLE
//        * Initial conditions: 
//        *    with {
//        *        the IUT being in the "initial state"
+99 −12
Original line number Diff line number Diff line
@@ -43,8 +43,8 @@ module ItsMapem_TpFunctions {
                // Local variables
                
                // Test control
                if (not PICS_MAPEM_GENERATION) {
                    log("*** " & testcasename() & ": PICS_MAPEM_GENERATION required for executing the TC ***");
                if (not PICS_RSU_ROLE or not PICS_MAPEM_GENERATION) {
                    log("*** " & testcasename() & ": PICS_RSU_ROLE and PICS_MAPEM_GENERATION required for executing the TC ***");
                    setverdict(inconc);
                    stop;
                }
@@ -91,8 +91,8 @@ module ItsMapem_TpFunctions {
                // Local variables
                
                // Test control
                if (not PICS_MAPEM_GENERATION) {
                    log("*** " & testcasename() & ": PICS_MAPEM_GENERATION required for executing the TC ***");
                if (not PICS_RSU_ROLE or not PICS_MAPEM_GENERATION) {
                    log("*** " & testcasename() & ": PICS_RSU_ROLE and PICS_MAPEM_GENERATION required for executing the TC ***");
                    setverdict(inconc);
                    stop;
                }
@@ -146,8 +146,8 @@ module ItsMapem_TpFunctions {
                var MapemInd v_mapem;
                
                // Test control
                if (not PICS_MAPEM_GENERATION) {
                    log("*** " & testcasename() & ": PICS_MAPEM_GENERATION required for executing the TC ***");
                if (not PICS_RSU_ROLE or not PICS_MAPEM_GENERATION) {
                    log("*** " & testcasename() & ": PICS_RSU_ROLE and PICS_MAPEM_GENERATION required for executing the TC ***");
                    setverdict(inconc);
                    stop;
                }
@@ -205,6 +205,79 @@ module ItsMapem_TpFunctions {
                
            } // End of function f_IS_RLT_EVGN_BV_02
            
            /**
             * @desc    TP Function for TC_IS_RLT_EVGN_BV_03
             */
            function f_IS_RLT_EVGN_BV_03 () runs on ItsMapemSpatem {
                
                // Local variables
                var MapemInd v_mapem;
                
                // Test control
                if (not PICS_RSU_ROLE or not PICS_MAPEM_GENERATION) {
                    log("*** " & testcasename() & ": PICS_RSU_ROLE and PICS_MAPEM_GENERATION required for executing the TC ***");
                    setverdict(inconc);
                    stop;
                }
                
                // Test component configuration
                f_cfUp();
                    
                // Preamble
                f_prInitialState();
                f_awaitMapeMessage(
                    mw_mapemInd(
                        mw_mapemPdu(
                            mw_defaultMapem
                    )),
                    v_mapem
                );
                f_selfOrClientSyncAndVerdictPreamble(c_prDone, e_success);
                    
                // Test Body
                f_utTriggerEvent(m_utTriggerEvent(mapemNewContentWithFragmentation));
                tc_ac.start;
                alt {
                    [] mapemSpatemPort.receive(
                        mw_mapemInd(
                            mw_mapemPdu(
                                mw_mapemLayerType
                    ))) -> value v_mapem { 
                        log("*** " & testcasename() & ": INFO: Successfully received the first fragment of MAPEM. ***");
                        repeat;
                    }
                    [] mapemSpatemPort.receive(
                        mw_mapemInd(
                            mw_mapemPdu(
                                mw_mapemLayerType(
                                                  v_mapem.msgIn.map_.layerID + 1
                                )
                    ))) { 
                        tc_ac.stop;
                        log("*** " & testcasename() & ": PASS: Successfully received the last fragment of MAPEM. ***");
                        f_selfOrClientSyncAndVerdict(c_tbDone, e_success);
                    }
                    [] mapemSpatemPort.receive(
                        mw_mapemInd(
                            mw_mapemPdu(
                                mw_defaultMapem
                    ))) { 
                        tc_ac.stop;
                        log("*** " & testcasename() & ": FAIL: Received a MAPEM with incorrect information. ***");
                        f_selfOrClientSyncAndVerdict(c_tbDone, e_success);
                    }
                    [] tc_ac.timeout {
                        log("*** " & testcasename() & ": INCONC: Timeout while awaiting the reception of a message. ***");
                        f_selfOrClientSyncAndVerdict(c_tbDone, e_timeout);
                    }
                }
                
                // Postamble
                f_poDefault();
                f_cfDown();
                
            } // End of function f_IS_RLT_EVGN_BV_03
            
        } // End of group mapeEventGeneration
        
        group mapeCommunication {
@@ -218,8 +291,8 @@ module ItsMapem_TpFunctions {
                var boolean v_tlmServiceStarted := false;
                
                // Test control
                if (not PICS_MAPEM_GENERATION or not PICS_SPATEM_GENERATION) {
                    log("*** " & testcasename() & ": PICS_MAPEM_GENERATION and PICS_SPATEM_GENERATION required for executing the TC ***");
                if (not PICS_RSU_ROLE or not PICS_SPATEM_GENERATION or not PICS_SPATEM_GENERATION) {
                    log("*** " & testcasename() & ": PICS_RSU_ROLE and PICS_MAPEM_GENERATION and PICS_SPATEM_GENERATION required for executing the TC ***");
                    setverdict(inconc);
                    stop;
                }
@@ -275,6 +348,13 @@ module ItsMapem_TpFunctions {
                // Local variables
                const UInt8 c_gnNhBtpB := 2;
                
                // Test control
                if (not PICS_RSU_ROLE or not PICS_MAPEM_GENERATION) {
                    log("*** " & testcasename() & ": PICS_RSU_ROLE and PICS_MAPEM_GENERATION required for executing the TC ***");
                    setverdict(inconc);
                    stop;
                }
                
                // Test component configuration
                f_cfUp();
                
@@ -326,6 +406,13 @@ module ItsMapem_TpFunctions {
                // Local variables
                const UInt16 c_gnNhBtpBPort := 2003;
                
                // Test control
                if (not PICS_RSU_ROLE or not PICS_MAPEM_GENERATION) {
                    log("*** " & testcasename() & ": PICS_RSU_ROLE and PICS_MAPEM_GENERATION required for executing the TC ***");
                    setverdict(inconc);
                    stop;
                }
                
                // Test component configuration
                f_cfUp();
                
@@ -372,8 +459,8 @@ module ItsMapem_TpFunctions {
                const UInt8 c_gnHtGbc := 4;
                
                // Test control
                if (not PICS_MAPEM_GENERATION) {
                    log("*** " & testcasename() & ": PICS_MAPEM_GENERATION required for executing the TC ***");
                if (not PICS_RSU_ROLE or not PICS_MAPEM_GENERATION) {
                    log("*** " & testcasename() & ": PICS_RSU_ROLE and PICS_MAPEM_GENERATION required for executing the TC ***");
                    setverdict(inconc);
                    stop;
                }
@@ -448,8 +535,8 @@ module ItsMapem_TpFunctions {
            var MapemReq   v_mapemReq;
            var integer     i;
                
            if (not PICS_MAPEM_RECEPTION) {
                log("*** " & testcasename() & ": not PICS_RSU and PICS_MAPEM_RECEPTION required for executing the TC ***");
            if (PICS_RSU_ROLE or not PICS_MAPEM_RECEPTION) {
                log("*** " & testcasename() & ": not PICS_RSU_ROLE and PICS_MAPEM_RECEPTION required for executing the TC ***");
                setverdict(inconc);
                stop;
            }
+16 −15
Original line number Diff line number Diff line
@@ -21,7 +21,7 @@ module ItsSpatem_TestCases {
            /**
             * @desc Check that protocolVersion is set to 1 and messageID is set to 4
             * <pre>
             * Pics Selection: PICS_SPATEM_GENERATION
             * Pics Selection: PICS_RSU_ROLE and PICS_SPATEM_GENERATION
             * Initial conditions: 
             *   with {
             *        the IUT being in the "initial state"
@@ -60,7 +60,7 @@ module ItsSpatem_TestCases {
            /**
             * @desc Check that TLM Service generates a new SPATEM on reception of a valid AppSPATEM _Start request
             * <pre>
             * Pics Selection: PICS_SPATEM_GENERATION
             * Pics Selection: PICS_RSU_ROLE and PICS_SPATEM_GENERATION
             * Initial conditions: 
             *   with {
             *        the IUT being in the "initial state"
@@ -90,7 +90,7 @@ module ItsSpatem_TestCases {
            /**
             * @desc Check that TLM Service generates SPATEM are time ordered
             * <pre>
             * Pics Selection: PICS_SPATEM_GENERATION
             * Pics Selection: PICS_RSU_ROLE and PICS_SPATEM_GENERATION
             * Initial conditions: 
             *   with {
             *        the IUT being in the "initial state"
@@ -120,7 +120,7 @@ module ItsSpatem_TestCases {
            /**
             * @desc Check that TLM Service terminates on reception of a valid AppSPATEM _Stop request
             * <pre>
             * Pics Selection: PICS_SPATEM_GENERATION
             * Pics Selection: PICS_RSU_ROLE and PICS_SPATEM_GENERATION
             * Initial conditions: 
             *   with {
             *        the IUT being in the "initial state"
@@ -150,7 +150,7 @@ module ItsSpatem_TestCases {
            /**
             * @desc Check that TLM Service generates a new SPATEM on reception of a valid AppSPATEM_Trigger request
             * <pre>
             * Pics Selection: PICS_SPATEM_GENERATION
             * Pics Selection: PICS_RSU_ROLE and PICS_SPATEM_GENERATION
             * Initial conditions: 
             *   with {
             *        the IUT being in the "initial state"
@@ -184,7 +184,7 @@ module ItsSpatem_TestCases {
            /**
             * @desc Check that TLM Service provides the destination area in SPATEM
             * <pre>
             * Pics Selection: PICS_SPATEM_GENERATION
             * Pics Selection: PICS_RSU_ROLE and PICS_SPATEM_GENERATION
             * Initial conditions: 
             *   with {
             *        the IUT being in the "initial state"
@@ -201,6 +201,7 @@ module ItsSpatem_TestCases {
             *                    containing regional
             *                        containing at least on region
             *                            indicating a regionId
             *                            and indication a regExtValue
             *        }
             *    }
             * </pre>
@@ -218,7 +219,7 @@ module ItsSpatem_TestCases {
            /**
             * @desc Check that SPATEM uses BTP_B packet
             * <pre>
             * Pics Selection: PICS_SPATEM_GENERATION
             * Pics Selection: PICS_RSU_ROLE and PICS_SPATEM_GENERATION
             * Initial conditions: 
             *   with {
             *        the IUT being in the "initial state"
@@ -249,7 +250,7 @@ module ItsSpatem_TestCases {
            /**
             * @desc Check that the destination port for SPATEM is set to 2004
             * <pre>
             * Pics Selection: PICS_SPATEM_GENERATION
             * Pics Selection: PICS_RSU_ROLE and PICS_SPATEM_GENERATION
             * Initial conditions: 
             *   with {
             *        the IUT being in the "initial state"
@@ -280,9 +281,9 @@ module ItsSpatem_TestCases {
            } // End of testcase TC_IS_TLM_COMM_BV_02_02
            
            /**
             * @desc Check that TLM Service provides the destination area in SPATEM
             * @desc Check that TLM service encapsulates SPATEM in a GBC with the HeaderType field set to the value of 4
             * <pre>
             * Pics Selection: PICS_SPATEM_GENERATION
             * Pics Selection: PICS_RSU_ROLE and PICS_SPATEM_GENERATION
             * Initial conditions: 
             *   with {
             *        the IUT being in the "initial state"
@@ -295,10 +296,10 @@ module ItsSpatem_TestCases {
             *        }
             *        then {
             *            the IUT sends a valid SPATEM
             *                containg spat
             *                    containing regional
             *                        containing at least on region
             *                            indicating a regionId
             *                encapsulated in a GBC packet
             *                    containing a correctly formatted Common Header
             *                        containing HeaderType field
             *                            indicating the value '4'
             *        }
             *    }
             * </pre>
@@ -322,7 +323,7 @@ module ItsSpatem_TestCases {
            /**
             * @desc Check that the IUT can successfully process all mandatory fields of SPATEM received
             * <pre>
             * Pics Selection: PICS_SPATEM_RECEPTION
             * Pics Selection: not PICS_RSU_ROLE and PICS_SPATEM_RECEPTION
             * Initial conditions: 
             *   with {
             *        the IUT being in the "initial state"
+40 −12

File changed.

Preview size limit exceeded, changes collapsed.

+7 −7
Original line number Diff line number Diff line
@@ -45,14 +45,14 @@ module ItsSrem_TestCases {
                 * </pre>
                 * 
                 * @version   1.0.4
                 * @see       ETSI TS 103 191-2 v0.0.1 TP_IS_TLC_MSGF_BV_01
                 * @see       ETSI TS 103 191-2 v0.0.1 TP_IS_RLT_MSGF_BV_01
                 * @reference ETSI TS 103 301 V1.0.4 Clause 8.3
                 */
                testcase TP_IS_TLC_MSGF_BV_01 () runs on ItsSremSsem system ItsSremSsemSystem {
                testcase TC_IS_RLT_MSGF_BV_01 () runs on ItsSremSsem system ItsSremSsemSystem {
                    
                    f_IS_TLC_MSGF_BV_01();
                    
                } // End of testcase TP_IS_TLC_MSGF_BV_01
                } // End of testcase TC_IS_RLT_MSGF_BV_01
                
            } // End of group sreMessageFormat 
            
@@ -81,11 +81,11 @@ module ItsSrem_TestCases {
                 * @see       ETSI TS 103 191-2 v0.0.1 TP_IS_TLC_EVGN_BV_01
                 * @reference ETSI TS 103 301 V1.0.4 Clause 8.4.1
                 */
                testcase TP_IS_TLC_EVGN_BV_01 () runs on ItsSremSsem system ItsSremSsemSystem {
                testcase TC_IS_TLC_EVGN_BV_01 () runs on ItsSremSsem system ItsSremSsemSystem {
                    
                    f_IS_TLC_EVGN_BV_01();
                    
                } // End of testcase TP_IS_TLC_EVGN_BV_01
                } // End of testcase TC_IS_TLC_EVGN_BV_01
                
                 /**
                 * @desc Check that the IUT identifies SREM with a unique request identifier
@@ -115,11 +115,11 @@ module ItsSrem_TestCases {
                 * @see       ETSI TS 103 191-2 v0.0.1 TP_IS_TLC_EVGN_BV_02
                 * @reference ETSI TS 103 301 V1.0.4 Clause 8.4.1
                 */
                testcase TP_IS_TLC_EVGN_BV_02 () runs on ItsSremSsem system ItsSremSsemSystem {
                testcase TC_IS_TLC_EVGN_BV_02 () runs on ItsSremSsem system ItsSremSsemSystem {
                    
                    f_IS_TLC_EVGN_BV_02();
                    
                } // End of testcase TP_IS_TLC_EVGN_BV_02
                } // End of testcase TC_IS_TLC_EVGN_BV_02
                
            } // End of group sreEventGeneration
            
Loading