ItsIvim_TestCases.ttcn 142 KB
Newer Older
Yann Garcia's avatar
Yann Garcia committed
 *    @version     $Url: https://oldforge.etsi.org/svn/ITS/tags/20170222_STF527_Final/ttcn/AtsIVIM/ItsIvim_TestCases.ttcn $
 *                 $Id: ItsIvim_TestCases.ttcn 2648 2017-01-03 09:02:30Z garciay $
 *    @desc        Testcases for IVI Service
 *    @reference   ETSI TS 103 301 v1.1.1
garciay's avatar
garciay committed
 *    @copyright   ETSI Copyright Notification
 *                 No part may be reproduced except as authorized by written permission.
 *                 The copyright and the foregoing restriction extend to reproduction in all media.
 *                 All rights reserved.
 */

module ItsIvim_TestCases {
    
    // LibIts
    import from LibItsIvim_TestSystem all;
    
    // Ats Its
    import from ItsIvim_TpFunctions all;

    // 5.2.1
    group iviMessageTransmission { 
        
        group iviMessageFormat {
            
            /**
             * @desc Check that protocolVersion is set to 1 and messageID is set to 6.
             * <pre>
             * Pics Selection: PICS_IVIM_GENERATION
             * Initial conditions: 
             *     with {
             *         the IUT being in the "initial state"
             *     }
             * Expected behaviour:
             *     ensure that {
             *         when {
             *             a IVIM is generated 
             *         }
             *         then {
             *             the IUT sends a valid IVIM
             *                 containing ITS PDU header
             *                     containing protocolVersion
             *                         indicating value 1
             *                     and containing messageID
             *                         indicating value 6
             *         }
             *     }
             * </pre>
             * 
             * @see       ETSI TS 103 191-2 v1.2.5 TP_IS_IVI_GEN_MSGF_BV_01
             * @reference ETSI TS 103 301 v1.1.1, clause 7.3
            testcase TC_IS_IVI_GEN_MSGF_BV_01() runs on ItsIvim system ItsIvimSystem {
            } // End of TC_IS_IVI_GEN_MSGF_BV_01
        group iviLoactionContainer{
            
            /**
             * @desc Check that all Application Containers references existing items in one or more Location Containers
             * <pre>
             * Pics Selection: PICS_IVIM_GENERATION
             * Initial conditions: 
             *     with {
             *         the IUT being in the "initial state"
             *         and the IUT sending IVIM
             *     }
             * Expected behaviour:
             *     ensure that {
             *         when {
             *             the IUT is requested to generate an IVIM
             *                 containing ivi
             *                     containing optional
             *                         containing any element of other types than GeographicLocationContainer
             *                             containing any reference to zones (Z_ID)
             *         }
             *         then {
             *             the IUT sends a valid IVIM
             *                 containing ivi
             *                     containing optional
             *                         containing elements of type GeographicLocationContainer
             *                             containing parts
             *                                 containing elements of type GlcPart
             *                                     containing zoneId
             *                                         indicating Z_ID
             *         }
             *     }
             * </pre>
             * 
             * @see       ETSI TS 103 191-2 v1.2.5 TP_IS_IVI_GEN_LOC_BV_01
             * @reference CEN ISO TS/19321 [5], clauses 5.1.1, 6.2.2.2
             */
            testcase TC_IS_IVI_GEN_LOC_BV_01() runs on ItsIvim system ItsIvimSystem {
                
                f_IS_IVI_GEN_LOC_BV_01();
                
            } // End of TC_IS_IVI_GEN_LOC_BV_01
            
            /**
             * @desc Check that application container information of the same type does not refer to overlapping RZs.
             * <pre>
             * Pics Selection: PICS_IVIM_GENERATION
             * Initial conditions: 
             *     with {
             *         the IUT being in the "initial state"
             *         and the IUT sending IVIM
             *     }
             * Expected behaviour:
             *     ensure that {
             *         when {
             *             the IUT is requested to generate an IVIM
             *                 containing ivi
             *                     containing optional
             *                         containing an element of any other type (T) than GeographicLocationContainer
             *                             containing relevanceZoneIds
             *                                 indicating reference to zone (Z_ID_1)
             *                         and containing another element of type T
             *                             containing relevanceZoneIds
             *                                 indicating reference to zone (Z_ID_2)
             *         }
             *         then {
             *             the IUT sends an IVIM
             *                 containing ivi
             *                     containing optional
             *                         containing element of type GeographicLocationContainer
             *                             containing parts
             *                                 containing elements of type GlcPart (ZONE_1)
             *                                     containing zoneId
             *                                         indicating Z_ID_1
             *                         and containing element of type GeographicLocationContainer
             *                             containing parts
             *                                 containing elements of type GlcPart (ZONE_2)
             *                                     containing zoneId
             *                                         indicating Z_ID_2
             *             and ZONE_1 does not overlap ZONE_2
             *         }
             *     }
             * </pre>
             * 
             * @see       ETSI TS 103 191-2 v1.2.5 TP_IS_IVI_GEN_LOC_BV_02
             * @reference CEN ISO TS/19321 [5], clause 5.1.1
             */
            testcase TC_IS_IVI_GEN_LOC_BV_02() runs on ItsIvim system ItsIvimSystem {
                
                f_IS_IVI_GEN_LOC_BV_02();
                
            } // End of TC_IS_IVI_GEN_LOC_BV_02
            
            /**
             * @desc Check that all definitions of zones that are based on the same Reference Position, be it that they 
             *       are connected or not interconnected, should be included in the same Geographic Location Container.
             * <pre>
             * Pics Selection: PICS_IVIM_GENERATION
             * Initial conditions: 
             *     with {
             *         the IUT being in the "initial state"
             *         and the IUT sending IVIM
             *     }
             * Expected behaviour:
             *     ensure that {
             *         when {
             *             the IUT is requested to generate an IVIM
             *                 containing ivi
             *                     containing optional
             *                         containing an element of any other type (T) than GeographicLocationContainer
             *                             containing relevanceZoneIds
             *                                 indicating reference to zone (Z_ID_1)
             *                         and containing another element of type T
             *                             containing relevanceZoneIds
             *                                 indicating reference to zone (Z_ID_2)
             *         }
             *         then {
             *             the IUT sends an IVIM
             *                 containing ivi
             *                     containing optional
             *                         containing element of type GeographicLocationContainer
             *                             containing parts
             *                                 containing elements of type GlcPart (ZONE_1)
             *                                     containing zoneId
             *                                         indicating Z_ID_1
             *                         and containing element of type GeographicLocationContainer
             *                             containing parts
             *                                 containing elements of type GlcPart (ZONE_2)
             *                                     containing zoneId
             *                                         indicating Z_ID_2
             *             and ZONE_1 does not overlap ZONE_2
             *         }
             *     }
             * </pre>
             * 
             * @see       ETSI TS 103 191-2 v1.2.5 TP_IS_IVI_GEN_LOC_BV_03
             * @reference CEN ISO TS/19321 [5], clause 6.2.2.2
             */
            testcase TC_IS_IVI_GEN_LOC_BV_03() runs on ItsIvim system ItsIvimSystem {
                
                f_IS_IVI_GEN_LOC_BV_03();
                
            } // End of TC_IS_IVI_GEN_LOC_BV_03
            
            /**
             * @desc Check that the IUT includes the component laneNumber for each zone if the zone definition is restricted to specific lane(s).
             * <pre>
             * Pics Selection: PICS_IVIM_GENERATION
             * Initial conditions: 
             *     with {
             *         the IUT being in the "initial state"
             *         and the IUT sending IVIM
             *     }
             * Expected behaviour:
             *     ensure that {
             *         when {
             *             the IUT is requested to generate an IVIM
             *                 the IUT is requested to generate an IVIM
             *                     containing zone definitions (ZONE_1)
             *                         restricted to specific lane (LANE_1)
             *         }
             *         then {
             *             the IUT sends a valid IVIM
             *                 containing ivi
             *                     containing optional
             *                         containing elements of type GeographicLocationContainer
             *                             containing parts
             *                                 containing elements of type GlcPart
             *                                     containing zone
             *                                         indicating ZONE_1
             *                                     and containing laneNumber
             *                                         indicating LANE_1
             *         }
             *     }
             * </pre>
             * 
             * @see       ETSI TS 103 191-2 v1.2.5 TP_IS_IVI_GEN_LOC_BV_04
             * @reference CEN ISO TS/19321 [5], clause 6.2.2.2
             */
            testcase TC_IS_IVI_GEN_LOC_BV_04() runs on ItsIvim system ItsIvimSystem {
                
                f_IS_IVI_GEN_LOC_BV_04();
                
            } // End of TC_IS_IVI_GEN_LOC_BV_04
            
            /**
             * @desc Check that If the zone definition applies to the entire carriageway (all lanes), the
             *       component laneNumber shall be absent.
             * <pre>
             * Pics Selection: PICS_IVIM_GENERATION
             * Initial conditions: 
             *     with {
             *         the IUT being in the "initial state"
             *         and the IUT sending IVIM
             *     }
             * Expected behaviour:
             *     ensure that {
             *         when {
             *             the IUT is requested to generate an IVIM
             *                 the IUT is requested to generate an IVIM
             *                     containing zone definitions (ZONE_1)
             *                         restricted to specific lane (LANE_1)
             *         }
             *         then {
             *             the IUT sends a valid IVIM
             *                 containing ivi
             *                     containing optional
             *                         containing elements of type GeographicLocationContainer
             *                             containing parts
             *                                 containing elements of type GlcPart
             *                                     containing zone
             *                                         indicating ZONE_1
             *                                     and containing laneNumber
             *                                         indicating LANE_1
             *         }
             *     }
             * </pre>
             * 
             * @see       ETSI TS 103 191-2 v1.2.5 TP_IS_IVI_GEN_LOC_BV_05
             * @reference CEN ISO TS/19321 [5], clause 6.2.2.2
             */
            testcase TC_IS_IVI_GEN_LOC_BV_05() runs on ItsIvim system ItsIvimSystem {
                
                f_IS_IVI_GEN_LOC_BV_05();
                
            } // End of TC_IS_IVI_GEN_LOC_BV_05
            
            /**
             * @desc Check that IUT includes, for each zone, one or more of the following optional components to define the zone: 
             *       the component zoneExtension and/or the component zoneHeading or, alternatively, the component zone.
             * <pre>
             * Pics Selection: PICS_IVIM_GENERATION
             * Initial conditions: 
             *     with {
             *         the IUT being in the "initial state"
             *         and the IUT sending IVIM
             *     }
             * Expected behaviour:
             *     ensure that {
             *         when {
             *             the IUT is requested to generate an IVIM
             *                 containing zone definitions
             *         }
             *         then {
             *             the IUT sends a valid IVIM
             *                 containing ivi
             *                     containing optional
             *                         containing elements of type GeographicLocationContainer
             *                             containing parts
             *                                 containing elements of type GlcPart
             *                                     containing zoneExtension
             *                                     or containing zoneHeading
             *                                     or containing zone
             *         }
             *     }
             * </pre>
             * 
             * @see       ETSI TS 103 191-2 v1.2.5 TP_IS_IVI_GEN_LOC_BV_06
             * @reference CEN ISO TS/19321 [5], clause 6.2.2.2
             */
            testcase TC_IS_IVI_GEN_LOC_BV_06() runs on ItsIvim system ItsIvimSystem {
                
                f_IS_IVI_GEN_LOC_BV_06();
                
            } // End of TC_IS_IVI_GEN_LOC_BV_06
            
        } // End of group iviLoactionContainer
        
        group iviManagemantContainer{
            
            /**
             * @desc Check that management container contains a country code according to ISO 3166-1. Numbers shall be assigned on national basis.
             * <pre>
             * Pics Selection: PICS_IVIM_GENERATION
             * Initial conditions: 
             *     with {
             *         the IUT being in the "initial state"
             *         and the IUT sending IVIM
             *     }
             * Expected behaviour:
             *     ensure that {
             *         when {
             *             the IUT is requested to generate an IVIM
             *         }
             *         then {
             *             the IUT sends a valid IVIM
             *                 containing ivi
             *                 containing mandatory
             *                     containing serviceProviderId
             *                         containing countryCode
             *                             indicating valid country code according to ISO 3166-1
             *         }
             *     }
             * </pre>
             * 
             * @see       ETSI TS 103 191-2 v1.2.5 TP_IS_IVI_GEN_MANC_BV_01
             * @reference CEN ISO TS/19321 [5], clause 6.1.1
             */
            testcase TC_IS_IVI_GEN_MANC_BV_01() runs on ItsIvim system ItsIvimSystem {
                
                f_IS_IVI_GEN_MANC_BV_01();
                
            } // End of TC_IS_IVI_GEN_MANC_BV_01
            
            /**
             * @desc Check that an IUT can split an IVI Structure to multiple messages if it exceeds the maximum PDU size.
             *       Check that the IVIM contains the component connectedIviStructures to connect the IVI Structure to other 
             *       IVI Structures provided by the same Service Provider that have been transmitted previously or by other ITS-S.
             * <pre>
             * Pics Selection: PICS_IVIM_GENERATION, PICS_IVIM_FRAGMENTATION
             * Initial conditions: 
             *     with {
             *         the IUT being in the "initial state"
             *         and the IUT sending IVIM
             *     }
             * Expected behaviour:
             *     ensure that {
             *         when {
             *             the IUT is requested to generate an IVIM
             *                 exceeding the maximum PDU size
             *         }
             *         then {
             *             the IUT sends the first IVIM (IVI_1)
             *                 containing ivi
             *                     containing mandatory
             *                         containing iviIdentificationNumber (IVI_1_ID)
             *                         and containing connectedIviStructures 
             *                             containing elements of type IviIdentificationNumber
             *                                 indicating ids of other IVI structures: IVI_2_ID, …, IVI_N_ID
             *             and the IUT sends subsequent IVIM
             *                 containing ivi
             *                     containing mandatory
             *                         containing iviIdentificationNumber (IVI_N)
             *                         and containing connectedIviStructures 
             *                             containing elements of type IviIdentificationNumber
             *                                 indicating ids of other IVI structures: IVI_1_ID, …
             *         }
             *     }
             * </pre>
             * 
             * @see       ETSI TS 103 191-2 v1.2.5 TP_IS_IVI_GEN_MANC_BV_02
             * @reference CEN ISO TS/19321 [5], clause 6.1.2
             */
            testcase TC_IS_IVI_GEN_MANC_BV_02() runs on ItsIvim system ItsIvimSystem {
                
                f_IS_IVI_GEN_MANC_BV_02();
                
            } // End of TC_IS_IVI_GEN_MANC_BV_02
            
        } // End of group iviManagemantContainer
        
        group iviEventGeneration {
            
            /**
             * @desc    Check that IVI Service generates a new IVIM on reception of a valid AppIVIM_Trigger request
             * <pre>
             * PICS Selection: PICS_IVIM_GENERATION 
             * Initial conditions:
             *  with {
             *      the IUT being in the "initial state"
             *  }
             * Expected behaviour:
             *  ensure that {
             *      when { 
             *          the IUT receives an AppIVIM_Trigger request from the application layer
             *      }
             *      then {
             *          the IUT sends a valid IVIM
             *      }
             *  }
             * </pre>
             * 
             * @see       ETSI TS 103 191-2 v1.2.5 TP_IS_IVI_GEN_EVGN_BV_01
             * @reference ETSI TS 103 301 v1.1.1, clause 7.4.1
            testcase TC_IS_IVI_GEN_EVGN_BV_01() runs on ItsIvim system ItsIvimSystem {
            } // End of TC_IS_IVI_GEN_EVGN_BV_01
            
            /**
             * @desc    Check that a new iviIdentificationNumber value is assigned for each newly generated IVIM
             * <pre>
             * PICS Selection: PICS_IVIM_GENERATION 
             * Initial conditions:
             *  with {
             *      the IUT being in the "initial state"
             *      and the IUT having generated several IVIM
             *  }
             * Expected behaviour:
             *  ensure that {
             *      when { 
             *          the IUT is requested to generate a new IVIM
             *      }
             *      then {
             *          the IUT sends a valid IVIM
             *              containing ivi
             *                  containing mandatory
             *                      containing iviIdentificationNumber
             *                          indicating an unused value
             *      }
             *  }
             * </pre>
             * 
             * @see       ETSI TS 103 191-2 v1.2.5 TP_IS_IVI_GEN_EVGN_BV_02
             * @reference ETSI TS 103 301 v1.1.1, clause 7.4.1
            testcase TC_IS_IVI_GEN_EVGN_BV_02() runs on ItsIvim system ItsIvimSystem {
            } // End of TC_IS_IVI_GEN_EVGN_BV_02
            
            /**
             * @desc    Check that iviIdentificationNumber value is set to a next unused value each time an IVIM is detected
             * <pre>
             * PICS Selection: PICS_IVIM_GENERATION 
             * Initial conditions:
             *  with {
             *      the IUT being in the "initial state"
             *      and the IUT having generated several IVIM
             *      and the IUT having generated its last DENM
             *          containing ivi
             *              containing mandatory
             *                  containing iviIdentificationNumber
             *                      indicating IVI_ID_1
             *      and no active IviID being associated with iviIdentificationNumber IVI_ID_1 + 1
             *  }
             * Expected behaviour:
             *  ensure that {
             *      when { 
             *          the IUT is requested to generate a new IVIM
             *      }
             *      then {
             *          the IUT sends a valid IVIM
             *              containing ivi
             *                  containing mandatory
             *                      containing iviIdentificationNumber
             *                          indicating IVI_ID_1 + 1
             *      }
             *  }
             * </pre>
             * 
             * @see       ETSI TS 103 191-2 v1.2.5 TP_IS_IVI_GEN_EVGN_BV_03
             * @reference ETSI TS 103 301 v1.1.1, clause 7.4.1
            testcase TC_IS_IVI_GEN_EVGN_BV_03() runs on ItsIvim system ItsIvimSystem {
            } // End of TC_IS_IVI_GEN_EVGN_BV_03
            
            /**
             * @desc    Check that a new generated IVIM contains an iviStatus set to 'new'
             * <pre>
             * PICS Selection: PICS_IVIM_GENERATION 
             * Initial conditions:
             *  with {
             *      the IUT being in the "initial state"
             *  }
             * Expected behaviour:
             *  ensure that {
             *      when { 
             *          the IUT is requested to generate a new IVIM
             *      }
             *      then {
             *          the IUT sends a valid IVIM
             *              containing ivi
             *                  containing mandatory
             *                      containing iviStatus
             *                          indicating 'new'
             *      }
             *  }
             * </pre>
             * 
             * @see       ETSI TS 103 191-2 v1.2.5 TP_IS_IVI_GEN_EVGN_BV_04
             * @reference ETSI TS 103 301 v1.1.1, clause 7.4.2
            testcase TC_IS_IVI_GEN_EVGN_BV_04() runs on ItsIvim system ItsIvimSystem {
            } // End of TC_IS_IVI_GEN_EVGN_BV_04
garciay's avatar
garciay committed
            
            /**
             * @desc   Check that the timeStamp is set to the current time when generating a new IVM
             * <pre>
             * PICS Selection: PICS_IVIM_GENERATION 
             * Initial conditions:
             *  with {
             *      the IUT being in the "initial state"
             * Expected behaviour:
             *  ensure that {
             *      when { 
             *          the IUT is requested to generate a new IVIM
             *      }
             *      then {
             *          the IUT sends a valid IVIM
             *              containing ivi
             *                  containing mandatory
             *                      containing timeStamp
             *                          indicating CLT
             *                      and containing iviStatus
             *                          indicating 'new'
             *      }
             *  }
             * </pre>
             * 
             * @see       ETSI TS 103 191-2 v1.2.5 TP_IS_IVI_GEN_EVGN_BV_05@reference 
             * @reference ETSI TS 103 301 v1.1.1, clause 7.4.2
            testcase TC_IS_IVI_GEN_EVGN_BV_05() runs on ItsIvim system ItsIvimSystem {
            } // End of TC_IS_IVI_GEN_EVGN_BV_05
        } // End of group iviEventGeneration
        
        group iviEventUpdate {
            
            /**
             * @desc    Check that an updated IVIM contains an iviStatus set to 'update'
             * <pre>
             * PICS Selection: PICS_IVIM_GENERATION AND PICS_IVIM_UPDATE
             * Initial conditions:
             *  with {
             *      the IUT being in the "initial state"
             *      and the IUT having generated an event
             *          containing ivi
             *              containing mandatory
             *                  containing iviIdentificationNumber 
             *                      indicating IVIM_ID_1
             *                  containing iviStatus
             *                      indicating 'new'
             *  }
             * Expected behaviour:
             *  ensure that {
             *      when { 
             *          the IUT receives an AppIVIM_update request associated with IVIM_ID_1
             *      }
             *      then {
             *          the IUT sends a valid IVIM
             *              containing ivi
             *                  containing mandatory
             *                      containing iviStatus
             *                          indicating 'update'
             *      }
             *  }
             * </pre>
             * 
             * @see       ETSI TS 103 191-2 v1.2.5 TP_IS_IVI_GEN_EVUP_BV_01
             * @reference ETSI TS 103 301 v1.1.1, clause 7.4.2
            testcase TC_IS_IVI_GEN_EVUP_BV_01() runs on ItsIvim system ItsIvimSystem {
            } // End of TC_IS_IVI_GEN_EVUP_BV_01
            
            /**
             * @desc    Check that an update can change the validity time to the IVIM - validTo information field
             * <pre>
garciay's avatar
garciay committed
             * PICS Selection: PICS_IVIM_UPDATE 
             * Initial conditions:
             *  with {
             *      the IUT being in the "initial state"
             *      and the IUT having generated an event
             *          containing ivi
             *              containing mandatory
             *                  not containing validTo
             *                  and containing iviStatus
             *                      indicating 'update'
             *  }
             * Expected behaviour:
             *  ensure that {
             *      when { 
             *          the IUT receives an AppIVIM_update indicating a validTo value VT_1
             *      }
             *      then {
             *          the IUT sends a valid IVIM
             *              containing ivi
             *                  containing mandatory
             *                      containing validTo
             *                          indicating VT_1
             *                      and containing iviStatus
             *                          indicating 'update'
             *      }
             *  }
             * </pre>
             * 
             * @see       ETSI TS 103 191-2 v1.2.5 TP_IS_IVI_GEN_EVUP_BV_02
             * @reference ETSI TS 103 301 v1.1.1, clause 7.4.2
            testcase TC_IS_IVI_GEN_EVUP_BV_02() runs on ItsIvim system ItsIvimSystem {
            } // End of TC_IS_IVI_GEN_EVUP_BV_02
            
            /**
             * @desc    Check that an update can change the validity time to the IVIM - validFrom information field
             * <pre>
garciay's avatar
garciay committed
             * PICS Selection: PICS_IVIM_UPDATE 
             * Initial conditions:
             *  with {
             *      the IUT being in the "initial state"
             *      and the IUT having generated an event
             *          containing ivi
             *              containing mandatory
             *                  containing validFrom
             *                      indicating VT_1
             *                  and containing iviStatus
             *                      indicating 'update'
             *  }
             * Expected behaviour:
             *  ensure that {
             *      when { 
             *          the IUT receives an AppIVIM_update indicating a validFrom value VF_1
             *      }
             *      then {
             *          the IUT sends a valid IVIM
             *              containing ivi
             *                  containing mandatory
             *                      containing validFROM
             *                      and containing iviStatus
             *                          indicating 'update'
             *      }
             *  }
             * </pre>
             * 
             * @see       ETSI TS 103 191-2 v1.2.5 TP_IS_IVI_GEN_EVUP_BV_03
             * @reference ETSI TS 103 301 v1.1.1, clause 7.4.2
            testcase TC_IS_IVI_GEN_EVUP_BV_03() runs on ItsIvim system ItsIvimSystem {
            } // End of TC_IS_IVI_GEN_EVUP_BV_03
garciay's avatar
garciay committed
            /**
             * @desc    Check that the timeStamp is set to the current time when generating an update with some change of information content
             * <pre>
             * PICS Selection: PICS_IVIM_UPDATE 
             * Initial conditions:
             *  with {
             *      the IUT being in the "initial state"
             *      and the IUT having generated an event
             *          containing ivi
             *              containing mandatory
             *                  containing timeStamp
             *                  and containing iviStatus
             *                      indicating 'new'
             *  }
             * Expected behaviour:
             *  ensure that {
             *      when { 
             *          the IUT receives an AppIVIM_update
             *      }
             *      then {
             *          the IUT sends a valid IVIM
             *              containing ivi
             *                  containing mandatory
             *                      containing timeStamp
             *                          indicating CLT
             *                      and containing iviStatus
             *                          indicating 'update'
             *      }
             *  }
             * </pre>
             * 
             * @see       ETSI TS 103 191-2 v1.2.5 TP_IS_IVI_GEN_EVUP_BV_04
             * @reference ETSI TS 103 301 v1.1.1, clause 7.4.2
            testcase TC_IS_IVI_GEN_EVUP_BV_04() runs on ItsIvim system ItsIvimSystem {
            } // End of TC_IS_IVI_GEN_EVUP_BV_04
garciay's avatar
garciay committed
            
            /**
             * @desc    Check that the iviIdentificationNumber remains unchanged IVIM is updated
             * <pre>
             * PICS Selection: PICS_IVIM_UPDATE 
             * Initial conditions:
             *  with {
             *      the IUT being in the "initial state"
             *      and the IUT having generated an event
             *          containing ivi
             *              containing mandatory
             *                  containing iviIdentificationNumber 
             *                      inicating IVIM_ID_1
             *                  and containing iviStatus
             *                      indicating 'new'
             *  }
             * Expected behaviour:
             *  ensure that {
             *      when { 
             *          the IUT receives an AppIVIM_update request associated with IVIM_ID_1
             *      }
             *      then {
             *          the IUT sends a valid IVIM
             *              containing ivi
             *                  containing mandatory
             *                      containing iviIdentificationNumber 
             *                          indicating IVIM_ID_1
             *                      and containing iviStatus
             *                          indicating 'update'
             *      }
             *  }
             * </pre>
             * 
             * @see       ETSI TS 103 191-2 v1.2.5 TP_IS_IVI_GEN_EVUP_BV_05
             * @reference ETSI TS 103 301 v1.1.1, clause 7.4.2
            testcase TC_IS_IVI_GEN_EVUP_BV_05() runs on ItsIvim system ItsIvimSystem {
            } // End of TC_IS_IVI_GEN_EVUP_BV_05
        group iviGeneralApplicationContainer{
             * @desc The IUT shall, at minimum, include the identifier(s) of a Relevance Zone in the component 
             *       relevanceZoneIds or of an ITS Regulatory Region in the component its-Rrid.
             * <pre>
             * Pics Selection: PICS_IVIM_GENERATION AND PICS_IVIM_HAS_GENERAL_CONTAINER
             * Initial conditions: 
             *     with {
             *         the IUT being in the "initial state"
             *         and the IUT sending IVIM
             *     }
             * Expected behaviour:
             *     ensure that {
             *         when {
             *             the IUT is requested to generate an IVIM
             *                 containing General Application Containers
             *         }
             *         then {
             *             the IUT sends a valid IVIM
             *                 containing ivi
             *                     containing optional
             *                         containing elements of type GeneralIviContainer
             *                             containing elements of type GicPart
             *                                 containing relevanceZoneIds
             *                                 or containing its-Rrid
             *         }
             *     }
             * </pre>
             * 
             * @see       ETSI TS 103 191-2 v1.2.5 TP_IS_IVI_GEN_GENAPP_BV_01
             * @reference CEN ISO TS/19321 [5], clause 6.3.2.2
            testcase TC_IS_IVI_GEN_GENAPP_BV_01() runs on ItsIvim system ItsIvimSystem {
            } // End of TC_IS_IVI_GEN_GENAPP_BV_01
             * @desc Check that all zone IDs in the General Application Container references existing items in 
             *       the Location Container of the same IVIM Structure
             * <pre>
             * Pics Selection: PICS_IVIM_GENERATION AND PICS_IVIM_HAS_GENERAL_CONTAINER
             * Initial conditions: 
             *     with {
             *         the IUT being in the "initial state"
             *         and the IUT sending IVIM
             *     }
             * Expected behaviour:
             *     ensure that {
             *         when {
             *             the IUT is requested to generate an IVIM
             *                 containing one or more General Application Containers
             *                     containing elements of types GicPart
             *                         optionally containing relevanceZoneIds
             *                             containing RZ_IDs
             *                         and optionally containing detectionZoneIds
             *                             containing DZ_IDs
             *                         and optionally containing driverAwarenessZoneIds
             *                             containing DAZ_IDs
             *         }
             *         then {
             *             the IUT sends a valid IVIM
             *                 containing ivi
             *                     containing optional
             *                         containing elements of type GeneralIviContainer
             *                             containing all zones referenced from RZ_IDs, DZ_IDs and DAZ_IDs
             *         }
             *     }
             * </pre>
             * 
             * @see       ETSI TS 103 191-2 v1.2.5 TP_IS_IVI_GEN_GENAPP_BV_02
             * @reference CEN ISO TS/19321 [5], clause 6.3.2.2
            testcase TC_IS_IVI_GEN_GENAPP_BV_02() runs on ItsIvim system ItsIvimSystem {
            } // End of TC_IS_IVI_GEN_GENAPP_BV_02
             * @desc The IUT shall include the component direction to describe the direction of relevance 
             *       within a Relevance Zone representing a road segment.
             * <pre>
             * Pics Selection: PICS_IVIM_GENERATION AND PICS_IVIM_HAS_GENERAL_CONTAINER
             * Initial conditions: 
             *     with {
             *         the IUT being in the "initial state"
             *         and the IUT sending IVIM
             *     }
             * Expected behaviour:
             *     ensure that {
             *         when {
             *             the IUT is requested to generate an IVIM
             *                 containing General Application Containers
             *                     containing relevanceZoneIds
             *         }
             *         then {
             *             the IUT sends a valid IVIM
             *                 containing ivi
             *                     containing optional
             *                         containing elements of type GeneralIviContainer
             *                             containing elements of type GicPart
             *                                 containing relevanceZoneIds
             *                                 and containing direction
             *         }
             *     }
             * </pre>
             * 
             * @see       ETSI TS 103 191-2 v1.2.5 TP_IS_IVI_GEN_GENAPP_BV_03
             * @reference CEN ISO TS/19321 [5], clause 6.3.2.2
            testcase TC_IS_IVI_GEN_GENAPP_BV_03() runs on ItsIvim system ItsIvimSystem {
            } // End of TC_IS_IVI_GEN_GENAPP_BV_03
             * @desc The IUT shall include at least one element in the roadSignCodes container.
             *       The IUT shall include at least one element in the component roadSignCode to specify 
             *       which road signs are applicable for a Relevance Zone. A sending ITS-S should select 
             *       the road sign from a catalogue which is known to be supported by a receiving ITS-S.
             * <pre>
             * Pics Selection: PICS_IVIM_GENERATION AND PICS_IVIM_HAS_GENERAL_CONTAINER
             * Initial conditions: 
             *     with {
             *         the IUT being in the "initial state"
             *         and the IUT sending IVIM
             *     }
             * Expected behaviour:
             *     ensure that {
             *         when {
             *             the IUT is requested to generate an IVIM
             *                 containing General Application Containers
             *         }
             *         then {
             *             the IUT sends a valid IVIM
             *                 containing ivi
             *                     containing optional
             *                         containing elements of type GeneralIviContainer
             *                             containing elements of type GicPart
             *                                 containing roadSignCodes
             *                                     containing at least 1 element of type RSCode
             *                                         containing code
             *                                             containing COMPONENT_X
             *         }
             *     }
             * </pre>
             * 
             * @see       ETSI TS 103 191-2 v1.2.5 TP_IS_IVI_GEN_GENAPP_BV_01
             * @reference CEN ISO TS/19321 [5], clause 6.3.2.2
            testcase TC_IS_IVI_GEN_GENAPP_BV_04() runs on ItsIvim system ItsIvimSystem {
            } // End of TC_IS_IVI_GEN_GENAPP_BV_04
            /**
             * @desc Check that ISO14823 attributes SET and NOL are not exists in the General Application Container.
             * <pre>
             * Pics Selection: PICS_IVIM_GENERATION AND PICS_IVIM_RSCODE_ISO14823
             * Initial conditions: 
             *     with {
             *         the IUT being in the "initial state"
             *         and the IUT sending IVIM
             *     }
             * Expected behaviour:
             *     ensure that {
             *         when {
             *             the IUT is requested to generate an IVIM
             *                 containing General Application Containers
             *         }
             *         then {
             *             the IUT sends a valid IVIM
             *                 containing ivi
             *                     containing optional
             *                         TODO
             *         }
             *     }
             * </pre>
             * 
             * @see       ETSI TS 103 191-2 v1.2.5 TP_IS_IVI_GEN_GENAPP_BV_05
             * @reference CEN ISO TS/19321 [5], clause 7.2.8
             */
            testcase TC_IS_IVI_GEN_GENAPP_BV_05() runs on ItsIvim system ItsIvimSystem {
                
                f_IS_IVI_GEN_GENAPP_BV_05();
                
            } // End of TC_IS_IVI_GEN_GENAPP_BV_05
            
            /**
             * @desc Check that all layoutID of the General Application Containers references existing layouts 
             *       in the Layout Containers of the same IVIM Structure
             * <pre>
             * Pics Selection: PICS_IVIM_GENERATION AND PICS_IVIM_HAS_GENERAL_CONTAINER AND PICS_IVIM_HAS_LAYOUT_CONTAINER
             * Initial conditions: 
             *     with {
             *         the IUT being in the "initial state"
             *         and the IUT sending IVIM
             *     }
             * Expected behaviour:
             *     ensure that {
             *         when {
             *             the IUT is requested to generate an IVIM
             *                 containing ivi
             *                     containing optional
             *                         containing elements of type GeneralIviContainer
             *                             containing element of type GicPart
             *                                 containing layoutId (LID)
             *         }
             *         then {
             *             the IUT sends a valid IVIM