/** * @author ETSI / STF517 * @version $URL$ * $Id$ * @desc IVIM Testcases (TS 103 191-2 V1.2.1) * @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. *
             * 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
             *         }
             *     }
             * 
* * @see ETSI TS 103 191-2 v1.2.1 TP_IS_IVI_MSGF_BV_01 * @reference ETSI TS 103 301, clause 7.3 */ testcase TC_IS_IVI_MSGF_BV_01() runs on ItsIvim system ItsIvimSystem { f_IS_IVI_MSGF_BV_01(); } // End of TC_IS_IVI_MSGF_BV_01 } // End of group iviMessageFormat group iviEventGeneration { /** * @desc Check that IVI Service generates a new IVIM on reception of a valid AppIVIM_Trigger request *
             * 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
             *      }
             *  }
             * 
* * @see ETSI TS 103 191-2 v1.2.1 TP_IS_IVI_EVGN_BV_01 * @reference ETSI TS 103 301, clause 7.4.1 */ testcase TC_IS_IVI_EVGN_BV_01() runs on ItsIvim system ItsIvimSystem { f_IS_IVI_EVGN_BV_01(); } // End of TC_IS_IVI_EVGN_BV_01 /** * @desc Check that a new iviIdentificationNumber value is assigned for each newly generated IVIM *
             * 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
             *      }
             *  }
             * 
* * @see ETSI TS 103 191-2 v1.2.1 TP_IS_IVI_EVGN_BV_02 * @reference ETSI TS 103 301, clause 7.4.1 */ testcase TC_IS_IVI_EVGN_BV_02() runs on ItsIvim system ItsIvimSystem { f_IS_IVI_EVGN_BV_02(); } // End of TC_IS_IVI_EVGN_BV_02 /** * @desc Check that iviIdentificationNumber value is set to a next unused value each time an IVIM is detected *
             * 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
             *      }
             *  }
             * 
* * @see ETSI TS 103 191-2 v1.2.1 TP_IS_IVI_EVGN_BV_03 * @reference ETSI TS 103 301, clause 7.4.1 */ testcase TC_IS_IVI_EVGN_BV_03() runs on ItsIvim system ItsIvimSystem { f_IS_IVI_EVGN_BV_03(); } // End of TC_IS_IVI_EVGN_BV_03 /** * @desc Check that a new generated IVIM contains an iviStatus set to 'new' *
             * 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'
             *      }
             *  }
             * 
* * @see ETSI TS 103 191-2 v1.2.1 TP_IS_IVI_EVGN_BV_04 * @reference ETSI TS 103 301, clause 7.4.2 */ testcase TC_IS_IVI_EVGN_BV_04() runs on ItsIvim system ItsIvimSystem { f_IS_IVI_EVGN_BV_04(); } // End of TC_IS_IVI_EVGN_BV_04 /** * @desc Check that the timeStamp is set to the current time when generating a new IVM *
             * 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'
             *      }
             *  }
             * 
* * @see ETSI TS 103 191-2 v1.2.1 TP_IS_IVI_EVGN_BV_05@reference * @reference ETSI TS 103 301, clause 7.4.2 */ testcase TC_IS_IVI_EVGN_BV_05() runs on ItsIvim system ItsIvimSystem { f_IS_IVI_EVGN_BV_05(); } // End of TC_IS_IVI_EVGN_BV_05 } // End of group iviEventGeneration group iviEventUpdate { /** * @desc Check that an updated IVIM contains an iviStatus set to 'update' *
             * 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 
             *                      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'
             *      }
             *  }
             * 
* * @see ETSI TS 103 191-2 v1.2.1 TP_IS_IVI_EVUP_BV_01 * @reference ETSI TS 103 301, clause 7.4.2 */ testcase TC_IS_IVI_EVUP_BV_01() runs on ItsIvim system ItsIvimSystem { f_IS_IVI_EVUP_BV_01(); } // End of TC_IS_IVI_EVUP_BV_01 /** * @desc Check that an update can change the validity time to the IVIM - validTo information field *
             * 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'
             *      }
             *  }
             * 
* * @see ETSI TS 103 191-2 v1.2.1 TP_IS_IVI_EVUP_BV_02 * @reference ETSI TS 103 301, clause 7.4.2 */ testcase TC_IS_IVI_EVUP_BV_02() runs on ItsIvim system ItsIvimSystem { f_IS_IVI_EVUP_BV_02(); } // End of TC_IS_IVI_EVUP_BV_02 /** * @desc Check that an update can change the validity time to the IVIM - validFrom information field *
             * 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 validFrom
             *                  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
             *                          indicating VF_1
             *                      and containing iviStatus
             *                          indicating 'update'
             *      }
             *  }
             * 
* * @see ETSI TS 103 191-2 v1.2.1 TP_IS_IVI_EVUP_BV_03 * @reference ETSI TS 103 301, clause 7.4.2 */ testcase TC_IS_IVI_EVUP_BV_03() runs on ItsIvim system ItsIvimSystem { f_IS_IVI_EVUP_BV_03(); } // End of TC_IS_IVI_EVUP_BV_03 /** * @desc Check that the timeStamp is set to the current time when generating an update with some change of information content *
             * 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'
             *      }
             *  }
             * 
* * @see ETSI TS 103 191-2 v1.2.1 TP_IS_IVI_EVUP_BV_04 * @reference ETSI TS 103 301, clause 7.4.2 */ testcase TC_IS_IVI_EVUP_BV_04() runs on ItsIvim system ItsIvimSystem { f_IS_IVI_EVUP_BV_04(); } // End of TC_IS_IVI_EVUP_BV_04 /** * @desc Check that the iviIdentificationNumber remains unchanged IVIM is updated *
             * 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'
             *      }
             *  }
             * 
* * @see ETSI TS 103 191-2 v1.2.1 TP_IS_IVI_EVUP_BV_05 * @reference ETSI TS 103 301, clause 7.4.2 */ testcase TC_IS_IVI_EVUP_BV_05() runs on ItsIvim system ItsIvimSystem { f_IS_IVI_EVUP_BV_05(); } // End of TC_IS_IVI_EVUP_BV_05 } // End of group iviEventUpdate group iviEventTermination { /** * @desc Check that the IUT terminates IVM genration on validity duration expery *
             * Pics Selection: PICS_IVIM_GENERATION
             * Initial conditions: 
             *   with {
             *        the IUT being in the "initial state"
             *        and the IUT having generated several IVIM
             *            containing ivi
             *                containing mandatory
             *                    containing iviIdentificationNumber 
             *                        indicating IVIM_ID_1
             *                and containing validTo
             *                    indicating CLT + 10 seconds
             *                and containing iviStatus
             *                    indicating 'new'
             *    }
             * Expected behaviour:
             *    ensure that {
             *        when { 
             *            the IUT is alerted of expiration of the time associated with validTo
             *        }
             *        then {
             *            the IUT stops ending IVIM associated with IVIM_ID_1
             *        }
             *    }
             * 
* * @see ETSI TS 103 191-2 v0.0.1 TP_IS_IVI_EVTR_BV_01 * @reference ETSI TS 103 301 v1.2.1 Clause 7.4.2 */ testcase TC_IS_IVI_EVTR_BV_01 () runs on ItsIvim system ItsIvimSystem { f_IS_IVI_EVTR_BV_01(); } // End of testcase TC_IS_IVI_EVTR_BV_01 /** * @desc Check that the IUT terminates IVM genration on termination request *
             * Pics Selection: PICS_IVIM_GENERATION
             * Initial conditions: 
             *   with {
             *        the IUT being in the "initial state"
             *        and the IUT having generated several IVIM
             *            containing ivi
             *                containing mandatory
             *                    containing iviIdentificationNumber 
             *                        indicating IVIM_ID_1
             *                and not containing validTo
             *                and containing iviStatus
             *                    indicating 'new'
             *    }
             * Expected behaviour:
             *    ensure that {
             *        when { 
             *            the IUT receives an AppIVIM_termination request associated with IVIM_ID_1
             *        }
             *        then {
             *            the IUT stops ending IVIM associated with IVIM_ID_1
             *        }
             *    }
             * 
* * @see ETSI TS 103 191-2 v0.0.1 TP_IS_IVI_EVTR_BV_02 * @reference ETSI TS 103 301 v1.2.1 Clause 7.4.2 */ testcase TC_IS_IVI_EVTR_BV_02 () runs on ItsIvim system ItsIvimSystem { f_IS_IVI_EVTR_BV_02(); } // End of testcase TC_IS_IVI_EVTR_BV_02 } // End of group iviEventTermination group iviEventRepetition { /** * @desc Check that the IUT activates repetition on reception of a valid AppIVIM_Update request *
             * Pics Selection: PICS_IVIM_UPDATE
             * Initial conditions: 
             *   with {
             *        the IUT being in the "initial state"
             *        and the IUT having generated several IVIM
             *            containing ivi
             *                containing mandatory
             *                    containing iviIdentificationNumber 
             *                        indicating IVIM_ID_1
             *    }
             * Expected behaviour:
             *    ensure that {
             *        when { 
             *            the IUT receives an AppIVIM_Update indicating 'repetition interval' RI_1
             *        }
             *        then {
             *            the IUT sends IVIM with respect to the 'repetition interval' RI_1
             *                containing ivi
             *                    containing mandatory
             *                        containing iviIdentificationNumber 
             *                            indicating IVIM_ID_1
             *        }
             *    }
             * 
* * @see ETSI TS 103 191-2 v0.0.1 TP_IS_IVI_EVRP_BV_01 * @reference ETSI TS 103 301 v1.2.1 Clause 7.4.2 */ testcase TC_IS_IVI_EVRP_BV_01 () runs on ItsIvim system ItsIvimSystem { f_IS_IVI_EVRP_BV_01(); } // End of testcase TC_IS_IVI_EVRP_BV_01 /** * @desc Check that the IUT activates repetition on reception of a valid AppIVIM_Update request *
             * Pics Selection: PICS_IVIM_UPDATE
             * Initial conditions: 
             *   with {
             *        the IUT being in the "initial state"
             *        and the IUT having generated several IVIM
             *            containing ivi
             *                containing mandatory
             *                    containing iviIdentificationNumber 
             *                        indicating IVIM_ID_1
             *    }
             * Expected behaviour:
             *    ensure that {
             *        when { 
             *            the IUT receives an AppIVIM_Update indicating 'repetition interval' 0
             *        }
             *        then {
             *            the IUT stops sending IVIM associated with IVIM_ID_1
             *        }
             *    }
             * 
* * @see ETSI TS 103 191-2 v0.0.1 TP_IS_IVI_EVRP_BV_02 * @reference ETSI TS 103 301 v1.2.1 Clause 7.4.2 */ testcase TC_IS_IVI_EVRP_BV_02 () runs on ItsIvim system ItsIvimSystem { f_IS_IVI_EVRP_BV_02(); } // End of testcase TC_IS_IVI_EVRP_BV_02 } // End of group iviEventRepetition group iviGenerationFrequency { /** * @desc Check that IVIMs are not generated more frequently than T_GenIvimMin *
             * 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 sends a IVIM
             *        }
             *        then {
             *            the IUT does not send any IVIM before expiry of T_GenIvimMin
             *        }
             *    }
             * 
* * @see ETSI TS 103 191-2 v0.0.1 TP_IS_IVI_GFQ_TI_01 * @reference ETSI TS 103 301 v1.2.1 Clause 7.4.2 */ testcase TC_IS_IVI_GFQ_TI_01 () runs on ItsIvim system ItsIvimSystem { f_IS_IVI_GFQ_TI_01(); } // End of testcase TC_IS_IVI_GFQ_TI_01 /** * @desc Check that IVIMs are not generated less frequently than T_GenIvimMax *
             * 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 sends a IVIM
             *        }
             *        then {
             *            the IUT sends another IVIM before expiry of T_GenIvimMax
             *        }
             *    }
             * 
* * @see ETSI TS 103 191-2 v0.0.1 TP_IS_IVI_GFQ_TI_02 * @reference ETSI TS 103 301 v1.2.1 Clause 7.4.2 */ testcase TC_IS_IVI_GFQ_TI_02 () runs on ItsIvim system ItsIvimSystem { f_IS_IVI_GFQ_TI_02(); } // End of testcase TC_IS_IVI_GFQ_TI_02 } // End of group iviGenerationFrequency group iviCommunication { /** * @desc Check that IVIM uses BTP_B packet *
             * 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 { 
             *            an IVIM is generated
             *        }
             *        then {
             *            the IUT sends a valid IVIM
             *                encapsulated in a BTP-B packet
             *        }
             *    }
             * 
* * @see ETSI TS 103 191-2 v0.0.1 TP_IS_IVI_COMM_BV_01_01 * @reference ETSI TS 103 301 v1.2.1 Clause 7.4.3.2 */ testcase TC_IS_IVI_COMM_BV_01_01 () runs on ItsIvim system ItsIvimSystem { f_IS_IVI_COMM_BV_01_01(); } // End of testcase TC_IS_IVI_COMM_BV_01_01 /** * @desc Check that the destination port for IVIM is set to 2006 *
             * 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 { 
             *            an IVIM is generated
             *        }
             *        then {
             *            the IUT sends a valid IVIM
             *                encapsulated in a BTP packet
             *                   containing a destination port value set to 2006
             *                   and containing a destination port info value set to 0
             *        }
             *    }
             * 
* * @see ETSI TS 103 191-2 v0.0.1 TP_IS_IVI_COMM_BV_01_02 * @reference ETSI TS 103 301 v1.2.1 Clause 7.4.3.2 */ testcase TC_IS_IVI_COMM_BV_01_02 () runs on ItsIvim system ItsIvimSystem { f_IS_IVI_COMM_BV_01_02(); } // End of testcase TC_IS_IVI_COMM_BV_01_02 /** * @desc Check that TLM service encapsulates IVIM in a UNC with the HeaderType field set to the value of 2 *
             * 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 { 
             *            a IVIM is generated
             *        }
             *        then {
             *            the IUT sends a valid IVIM
             *                encapsulated in a UNC packet
             *                    containing a correctly formatted Common Header
             *                        containing HeaderType field
             *                            indicating the value '2'
             *        }
             *    }
             * 
* * @see ETSI TS 103 191-2 v0.0.1 TP_IS_IVI_COMM_BV_02 * @reference ETSI TS 103 301 v1.2.1 Clause 7.4.3.2 */ testcase TC_IS_IVI_COMM_BV_02 () runs on ItsIvim system ItsIvimSystem { f_IS_IVI_COMM_BV_02(); } // End of testcase TC_IS_IVI_COMM_BV_02 } // End of group iviCommunication } // End of group iviMessageTransmission group iviMessageReception { /** * @desc Check that content of received IVIM is transmitted to * applications and other facilities. *
         * Pics Selection: PICS_IVIM_RECEPTION
         * Initial conditions: 
         *     with {
         *         the IUT being in the "initial state"
         *         and the IUT having receive a valid IVIM
         *     }
         * Expected behaviour:
         *     ensure that {
         *         when {
         *             the IUT receives a valid IVIM
         *         }
         *         then {
         *             the IUT forwards the IVIM content to upper layers
         *             and the IUT forwards the IVIM content to other facilities
         *         }
         *     }
         * 
* * @see ETSI TS 103 191-2 v0.0.1 TP_IS_IVI_MSGF_BV_02 * @reference ETSI TS 103 301 v1.2.1 Clause 7.4.3.2 */ testcase TC_IVIM_MSP_BV_01() runs on ItsIvim system ItsIvimSystem { f_IS_IVI_MSGF_BV_02(); } // end TC_IVIM_MSP_BV_01 } // End of group iviMessageReception } // End of module ItsIvim_TestCases