Commit b940b2b2 authored by Denis Filatov's avatar Denis Filatov
Browse files

Merge branch 'devel' into 'master'

v1.5.1 (end of TTF 011)

See merge request !1
parents 5765b972 9521f0ca
Loading
Loading
Loading
Loading
+6267 −0

File added.

Preview size limit exceeded, changes collapsed.

+494 −0
Original line number Diff line number Diff line
/**
 *  @author     ETSI / STF405 / STF449 / STF484
 *  @version    $URL$
 *              $Id$
 *  @desc       Test Control file for GeoNetworking
 *  @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 ItsGeoNetworking_TestControl {
    
    // ATS GeoNetworking
    import from ItsGeoNetworking_TestCases all;
    
    // LibItsGeoNetworking
    import from LibItsGeoNetworking_Pics all;
    import from LibItsGeoNetworking_TypesAndValues all;
    
    // Test Execution
    control {
        
        /* FDV */
        
        if(PICS_GN_BASIC_HEADER) {
            execute(TC_GEONW_FDV_BAH_BV_01());
            execute(TC_GEONW_FDV_BAH_BI_02());
        }

        if(PICS_GN_COMMON_HEADER) {
            execute(TC_GEONW_FDV_COH_BV_01());
            execute(TC_GEONW_FDV_COH_BV_02());
            execute(TC_GEONW_FDV_COH_BV_03());
            execute(TC_GEONW_FDV_COH_BO_04());
        }        
        
        if(PICS_GN_BEACON_SRC) {
            execute(TC_GEONW_FDV_BEA_BV_01());
            execute(TC_GEONW_FDV_BEA_BV_02());
            execute(TC_GEONW_FDV_BEA_BV_03());
            execute(TC_GEONW_FDV_BEA_BV_04());
        }
        
        if(PICS_GN_GUC_SRC) {
	        execute(TC_GEONW_FDV_GUC_BV_01());
        }
        
        if(PICS_GN_GBC_SRC) {
    	    execute(TC_GEONW_FDV_GBC_BV_01());
        }
        
        if(PICS_GN_GAC_SRC) {
        	execute(TC_GEONW_FDV_GAC_BV_01());
        }
        
        if(PICS_GN_SHB_SRC) {
        	execute(TC_GEONW_FDV_SHB_BV_01());
        }
        
        if(PICS_GN_TSB_SRC) {
        	execute(TC_GEONW_FDV_TSB_BV_01());
        }

		/* PON/LOT */

        if(PICS_GN_GUC_SRC and PICS_GN_BEACON_DST) {
        	execute(TC_GEONW_PON_LOT_BV_01());
        }
        
        if(PICS_GN_LS_REQ_SRC and PICS_GN_LS_REP_DST) {
        	execute(TC_GEONW_PON_LOT_BV_02());
        }
        
        if(PICS_GN_BEACON_DST) {
        	execute(TC_GEONW_PON_LOT_BV_03_01());
        }
        
        if(PICS_GN_GUC_DST) {
        	execute(TC_GEONW_PON_LOT_BV_03_02());
        }
        
        if(PICS_GN_GAC_DST) {
        	execute(TC_GEONW_PON_LOT_BV_03_03());
        }
        
        if(PICS_GN_GBC_DST) {
        	execute(TC_GEONW_PON_LOT_BV_03_04());
        }
        
        if(PICS_GN_TSB_DST) {
        	execute(TC_GEONW_PON_LOT_BV_03_05());
        }
        
        if(PICS_GN_SHB_DST) {
        	execute(TC_GEONW_PON_LOT_BV_03_06());
        }
        
        if(PICS_GN_LS_REQ_DST) {
        	execute(TC_GEONW_PON_LOT_BV_03_07());
        }
        
        if(PICS_GN_LS_REP_DST) {
        	execute(TC_GEONW_PON_LOT_BV_03_08());
        }
        
        if(PICS_GN_LS_REQ_SRC) {
        	execute(TC_GEONW_PON_LOT_BV_04());
        }
        
        if(PICS_GN_GUC_DST) {
        	execute(TC_GEONW_PON_LOT_BV_05_01());
        }
        
        if(PICS_GN_GAC_DST) {
        	execute(TC_GEONW_PON_LOT_BV_05_02());
        }
        
        if(PICS_GN_GBC_DST) {
        	execute(TC_GEONW_PON_LOT_BV_05_03());
        }
        
        if(PICS_GN_TSB_DST) {
        	execute(TC_GEONW_PON_LOT_BV_05_04());
        }
        
        if(PICS_GN_SHB_DST) {
        	execute(TC_GEONW_PON_LOT_BV_05_05());
        }
        
        if(PICS_GN_LS_REQ_DST) {
        	execute(TC_GEONW_PON_LOT_BV_05_06());
        }
        
        if(PICS_GN_LS_REP_DST) {
       		execute(TC_GEONW_PON_LOT_BV_05_07());
        }
        
        /* PON/LPV */
        
        if(PICS_GN_BEACON_SRC) {
        	execute(TC_GEONW_PON_LPV_BV_01());
        }
        
        /* PON/SQN */
        
        if(PICS_GN_GBC_SRC) {
            execute(TC_GEONW_PON_SQN_BV_01());
            execute(TC_GEONW_PON_SQN_BV_02());
        }
        
        /* PON/LOS */
        
        if(PICS_GN_LS_REQ_SRC) {
            execute(TC_GEONW_PON_LOS_BV_01());
            execute(TC_GEONW_PON_LOS_BV_02());
	        if(PICS_GN_LS_REP_DST) {
                execute(TC_GEONW_PON_LOS_BV_03());
                execute(TC_GEONW_PON_LOS_BV_04());
	        }
            execute(TC_GEONW_PON_LOS_BV_05());
        }
        
        if(PICS_GN_LS_REQ_RETRANSMISSION) {
            execute(TC_GEONW_PON_LOS_TI_06());
            execute(TC_GEONW_PON_LOS_BV_07());
        }
        
        if(PICS_GN_LS_REQ_DST) {
            execute(TC_GEONW_PON_LOS_BV_08());
            execute(TC_GEONW_PON_LOS_BO_09());
        }
        
        if(PICS_GN_LS_FWD) {
            execute(TC_GEONW_PON_LOS_BV_10());
            execute(TC_GEONW_PON_LOS_BV_11());
        }
        
        if(PICS_GN_LS_REQ_SRC) {
            execute(TC_GEONW_PON_LOS_BV_12());
            execute(TC_GEONW_PON_LOS_BV_13());
            execute(TC_GEONW_PON_LOS_BV_14());
            execute(TC_GEONW_PON_LOS_BV_15());
            execute(TC_GEONW_PON_LOS_BV_16());
            execute(TC_GEONW_PON_LOS_BV_17());
        }
        
        /* PON/FPB */
        
        if(PICS_GN_GUC_SRC) {
            execute(TC_GEONW_PON_FPB_BV_01());
            execute(TC_GEONW_PON_FPB_BV_02());
            execute(TC_GEONW_PON_FPB_BV_03());
            execute(TC_GEONW_PON_FPB_BV_04());
        }
        
        if(PICS_GN_TSB_SRC) {
            execute(TC_GEONW_PON_FPB_BV_06());
            execute(TC_GEONW_PON_FPB_BV_07());
            execute(TC_GEONW_PON_FPB_BV_08());
        }
        
        if(PICS_GN_GUC_SRC) {
        	execute(TC_GEONW_PON_FPB_BV_09());
        }
        
        if(PICS_GN_TSB_SRC) {
        	execute(TC_GEONW_PON_FPB_BV_10());
        }
        
        if(PICS_GN_GUC_SRC) {
        	execute(TC_GEONW_PON_FPB_BV_11_01());
        }
        
        if(PICS_GN_GAC_SRC) {
        	execute(TC_GEONW_PON_FPB_BV_11_02());
        }
        
        if(PICS_GN_GBC_SRC) {
        	execute(TC_GEONW_PON_FPB_BV_11_03());
        }
        
        if(PICS_GN_TSB_SRC) {
        	execute(TC_GEONW_PON_FPB_BV_11_04());
        }
        
        if(PICS_GN_SHB_SRC) {
        	execute(TC_GEONW_PON_FPB_BV_11_05());
        }
        
        if(PICS_GN_GUC_SRC) {
            execute(TC_GEONW_PON_FPB_BV_12_01());
        }
        
        if(PICS_GN_GAC_SRC) {
            execute(TC_GEONW_PON_FPB_BV_12_02());
        }
        
        if(PICS_GN_GBC_SRC) {
            execute(TC_GEONW_PON_FPB_BV_12_03());
        }
        
        if(PICS_GN_TSB_SRC) {
            execute(TC_GEONW_PON_FPB_BV_12_04());
        }
        
        /* PON/GNA */
        
        if(PICS_GN_ADDR_AUTO) {
            if (PICS_GN_LOCAL_ADDR_CONF_METHOD == e_auto) {
                execute(TC_GEONW_PON_GNA_BV_01());
            }
        }
        
        if(PICS_GN_DAD) {
	        execute(TC_GEONW_PON_GNA_BV_02());
        }
        
        /* PON/BEA */
        
        if(PICS_GN_BEACON_SRC) {
            execute(TC_GEONW_PON_BEA_TI_01());
            execute(TC_GEONW_PON_BEA_TI_02());
        }
        
        /* PON/GUC */
		if(PICS_GN_GUC) {
        
			if(PICS_GN_GUC_FWD) {
        		execute(TC_GEONW_PON_GUC_ALL_BV_03());
        		execute(TC_GEONW_PON_GUC_ALL_BO_04());
				execute(TC_GEONW_PON_GUC_ALL_BV_06());
            }
            
			if(PICS_GN_GUC_DST) {
        		execute(TC_GEONW_PON_GUC_ALL_BV_05());
        		execute(TC_GEONW_PON_GUC_ALL_BO_08());
            }            

            if((PICS_GN_NON_AREA_FORWARDING_ALGORITHM == e_greedy) or (PICS_GN_NON_AREA_FORWARDING_ALGORITHM == e_unspecified)) {
    	
				if(PICS_GN_GUC_SRC) {
                    execute(TC_GEONW_PON_GUC_GRD_BV_01());                    
                }

                if(PICS_GN_GUC_FWD) {
                    execute(TC_GEONW_PON_GUC_GRD_BV_02());
                    execute(TC_GEONW_PON_GUC_GRD_BO_07());
				}
            }
            
            if(PICS_GN_NON_AREA_FORWARDING_ALGORITHM == e_cbf) {

				if(PICS_GN_GUC_SRC) {	
            		execute(TC_GEONW_PON_GUC_CBF_BV_01());
                }
            
				if(PICS_GN_GUC_FWD) {	
            		execute(TC_GEONW_PON_GUC_CBF_BV_02());
            		execute(TC_GEONW_PON_GUC_CBF_BV_07());
            		execute(TC_GEONW_PON_GUC_CBF_BV_20());
            		execute(TC_GEONW_PON_GUC_CBF_BV_21());
            		execute(TC_GEONW_PON_GUC_CBF_BV_22());
                }
            }

        }
        
        /* PON/GBC */        
		if(PICS_GN_GBC) {
			
			if(PICS_GN_GBC_FWD) {
				execute(TC_GEONW_PON_GBC_NONAREA_ALL_BV_03());
    			execute(TC_GEONW_PON_GBC_NONAREA_ALL_BV_04());
    			execute(TC_GEONW_PON_GBC_NONAREA_ALL_BV_06());
    			execute(TC_GEONW_PON_GBC_NONAREA_ALL_BO_09());
    			execute(TC_GEONW_PON_GBC_NONAREA_ALL_BO_10());
			}
    
            if((PICS_GN_NON_AREA_FORWARDING_ALGORITHM == e_greedy) or (PICS_GN_NON_AREA_FORWARDING_ALGORITHM == e_unspecified)) {
        
                if(PICS_GN_GBC_SRC) {
                    execute(TC_GEONW_PON_GBC_NONAREA_GRD_BV_01());
                }
				
				if(PICS_GN_GBC_FWD) {
        			execute(TC_GEONW_PON_GBC_NONAREA_GRD_BV_02());
        			execute(TC_GEONW_PON_GBC_NONAREA_GRD_BO_07());
                }
            }
                
			if(PICS_GN_NON_AREA_FORWARDING_ALGORITHM == e_cbf) {
				
				if(PICS_GN_GBC_SRC) {
					execute(TC_GEONW_PON_GBC_NONAREA_CBF_BV_01());
                }

                if(PICS_GN_GBC_FWD) {        
					execute(TC_GEONW_PON_GBC_NONAREA_CBF_BV_02());
    			    execute(TC_GEONW_PON_GBC_NONAREA_CBF_BV_07());
        			execute(TC_GEONW_PON_GBC_NONAREA_CBF_BV_20());
        			execute(TC_GEONW_PON_GBC_NONAREA_CBF_BV_21());
        			execute(TC_GEONW_PON_GBC_NONAREA_CBF_BV_22());
                }
			}
            
			if(PICS_GN_GBC_SRC) {    
			    execute(TC_GEONW_PON_GBC_AREA_ALL_BV_01());
			}
			
			if(PICS_GN_GBC_FWD) {
    			execute(TC_GEONW_PON_GBC_AREA_ALL_BV_03());
    			execute(TC_GEONW_PON_GBC_AREA_ALL_BV_04());
            }

            if(PICS_GN_GBC_DST) {
    			execute(TC_GEONW_PON_GBC_AREA_ALL_BV_05());
    			execute(TC_GEONW_PON_GBC_AREA_ALL_BO_08());
			}
    
			if((PICS_GN_AREA_FORWARDING_ALGORITHM == e_simple) or (PICS_GN_AREA_FORWARDING_ALGORITHM == e_unspecified)) {
    
				if(PICS_GN_GBC_FWD) {
    			    execute(TC_GEONW_PON_GBC_AREA_SMP_BV_02());
    			    execute(TC_GEONW_PON_GBC_AREA_SMP_BO_07());
				}
			}
			
			if(PICS_GN_AREA_FORWARDING_ALGORITHM == e_cbf) {
				
				if(PICS_GN_GBC_FWD) {
        			execute(TC_GEONW_PON_GBC_AREA_CBF_BV_02());
        			execute(TC_GEONW_PON_GBC_AREA_CBF_BV_07());
        			execute(TC_GEONW_PON_GBC_AREA_CBF_BV_21());
        			execute(TC_GEONW_PON_GBC_AREA_CBF_BV_22());
				}
    		}
			
			if(PICS_GN_AREA_FORWARDING_ALGORITHM == e_advanced) {
				
				if(PICS_GN_GBC_FWD) {
        			execute(TC_GEONW_PON_GBC_AREA_ADV_BV_21());
        			execute(TC_GEONW_PON_GBC_AREA_ADV_BV_23());
        			execute(TC_GEONW_PON_GBC_AREA_ADV_BV_24());
        			execute(TC_GEONW_PON_GBC_AREA_ADV_BV_25());
        			execute(TC_GEONW_PON_GBC_AREA_ADV_BV_26());
        			execute(TC_GEONW_PON_GBC_AREA_ADV_BV_27());
        			execute(TC_GEONW_PON_GBC_AREA_ADV_BV_28());
        			execute(TC_GEONW_PON_GBC_AREA_ADV_BV_29());
				}
            }
        }
        
        /* PON/TSB */
		if(PICS_GN_TSB) {
			
			if(PICS_GN_TSB_SRC) {
			    execute(TC_GEONW_PON_TSB_BV_01());
			}
			
			if(PICS_GN_TSB_FWD) {
    			execute(TC_GEONW_PON_TSB_BV_02());
    			execute(TC_GEONW_PON_TSB_BV_03());
    			execute(TC_GEONW_PON_TSB_BO_04());
    			execute(TC_GEONW_PON_TSB_BO_07());    			
			}
			
			if(PICS_GN_TSB_DST) {
			    execute(TC_GEONW_PON_TSB_BV_05());
				execute(TC_GEONW_PON_TSB_BO_08());
			}
		}
        
        /* PON/SHB */
		if(PICS_GN_SHB) {
        
            if(PICS_GN_SHB_SRC) {
                execute(TC_GEONW_PON_SHB_BV_01());
            }
	
            if(PICS_GN_SHB_DST) {        
			    execute(TC_GEONW_PON_SHB_BV_05());
            }
		}
        
        /* PON/GAC */
		if(PICS_GN_GAC) {

			if(PICS_GN_GAC_FWD) {
    			execute(TC_GEONW_PON_GAC_NONAREA_ALL_BV_03());
    			execute(TC_GEONW_PON_GAC_NONAREA_ALL_BO_04());
    			execute(TC_GEONW_PON_GAC_NONAREA_ALL_BV_06());
    			execute(TC_GEONW_PON_GAC_NONAREA_ALL_BO_09());
    			execute(TC_GEONW_PON_GAC_NONAREA_ALL_BV_10());
            }            
    
			if((PICS_GN_NON_AREA_FORWARDING_ALGORITHM == e_greedy) or (PICS_GN_NON_AREA_FORWARDING_ALGORITHM == e_unspecified)) {
				
				if(PICS_GN_GAC_SRC) {
			        execute(TC_GEONW_PON_GAC_NONAREA_GRD_BV_01());
                }

                if(PICS_GN_GAC_FWD) {        
        			execute(TC_GEONW_PON_GAC_NONAREA_GRD_BV_02());
        			execute(TC_GEONW_PON_GAC_NONAREA_GRD_BO_07());
                }
            }
        
			if(PICS_GN_NON_AREA_FORWARDING_ALGORITHM == e_cbf) {

				if(PICS_GN_GAC_SRC) {
        			execute(TC_GEONW_PON_GAC_NONAREA_CBF_BV_01());
				}
				
				if(PICS_GN_GAC_FWD) {
        			execute(TC_GEONW_PON_GAC_NONAREA_CBF_BV_02());
        			execute(TC_GEONW_PON_GAC_NONAREA_CBF_BV_07());
        			execute(TC_GEONW_PON_GAC_NONAREA_CBF_BV_20());
        			execute(TC_GEONW_PON_GAC_NONAREA_CBF_BV_21());
        			execute(TC_GEONW_PON_GAC_NONAREA_CBF_BV_22());
				}
            }
			         
			if(PICS_GN_GAC_SRC) {   
    			execute(TC_GEONW_PON_GAC_AREA_ALL_BV_01());
            }
        
			if(PICS_GN_GAC_FWD) {
    			execute(TC_GEONW_PON_GAC_AREA_ALL_BV_02());
			}
        
			if(PICS_GN_GAC_DST) {
    			execute(TC_GEONW_PON_GAC_AREA_ALL_BV_05());
    			execute(TC_GEONW_PON_GAC_AREA_ALL_BO_08());
            }
        }
                
        /* CAP */       
        
        if(PICS_GN_LS_REQ_SRC) {         
        	execute(TC_GEONW_CAP_LOS_BV_01());
        }
        
        if(PICS_GN_GUC_FWD) {        
        	execute(TC_GEONW_CAP_FPB_BV_01());
        }
      
        if(PICS_GN_GBC_FWD) {
      	  execute(TC_GEONW_CAP_FPB_BV_02());
        }
        
    }
    
} // End of module ItsGeoNetworking_TestControl
+17107 −0

File added.

Preview size limit exceeded, changes collapsed.

+6 −2
Original line number Diff line number Diff line
# GeoNetworking TS 102 871-3
# GeoNetworking Abstract Test suite (TS 102 871-3)

GeoNetworking test suite as defined in ETSI TS 102 871-3
 No newline at end of file
GeoNetworking (GN) abstract test suite (ATS) as defined in [ETSI TS 102 871-3 v1.5.1](https://www.etsi.org/deliver/etsi_ts/102800_102899/10287103/01.05.01_60/ts_10287103v010501p.pdf)

This code is a part of the ETSI ITS test suite, available on https://forge.etsi.org/rep/ITS/TS.ITS

This version of the test suite was developed by the _TTF-011_ and published as version **v1.5.1**
+46 −0
Original line number Diff line number Diff line
module LibItsGeoNetworking_EncdecDeclarations {
    
    import from LibItsGeoNetworking_TypesAndValues all;
    
    external function fx_enc_GeoNetworkingReq (GeoNetworkingReq p) return bitstring
        with {extension "prototype(convert) encode(LibIts_Interface)"}
        
    external function fx_dec_GeoNetworkingReq (inout bitstring b, out GeoNetworkingReq p) return integer
        with {extension "prototype(sliding) decode(LibIts_Interface)"}
        
    external function fx_enc_GeoNetworkingInd (GeoNetworkingInd p) return bitstring
        with {extension "prototype(convert) encode(LibIts_Interface)"}
        
    external function fx_dec_GeoNetworkingInd (inout bitstring b, out GeoNetworkingInd p) return integer
        with {extension "prototype(sliding) decode(LibIts_Interface)"}
        
    external function fx_enc_GeoNetworkingPdu (GeoNetworkingPdu p) return bitstring
        with {extension "prototype(convert) encode(LibItsGeoNetworking)"}
        
    external function fx_dec_GeoNetworkingPdu (inout bitstring b, out GeoNetworkingPdu p) return integer
        with {extension "prototype(sliding) decode(LibItsGeoNetworking)"}
        
    external function fx_enc_GnNonSecuredPacket (GnNonSecuredPacket p) return bitstring
        with {extension "prototype(convert) encode(LibItsGeoNetworking)"}
        
    external function fx_dec_GnNonSecuredPacket (inout bitstring b, out GnNonSecuredPacket p) return integer
        with {extension "prototype(sliding) decode(LibItsGeoNetworking)"}
    
    /*
    external function fx_enc_GeoSecuredMessage (GeoNetworkingPacket.securedMsg p) return bitstring
        with {extension "prototype(convert) encode(LibItsSecurity)"}
    
    external function fx_dec_GeoSecuredMessage (inout bitstring b, out GeoNetworkingPacket.securedMsg p) return integer
        with {extension "prototype(sliding) decode(LibItsSecurity)"}
    */
    
    external function fx_enc_UtGnInitialize (UtGnInitialize p) return bitstring
        with {extension "prototype(convert) encode(UpperTester)"}
    
    external function fx_enc_UtGnChangePosition (UtGnChangePosition p) return bitstring
        with {extension "prototype(convert) encode(UpperTester)"}
    
    external function fx_enc_UtGnTrigger (UtGnTrigger p) return bitstring
        with {extension "prototype(convert) encode(UpperTester)"}
    
} // End of module LibItsGeoNetworking_EncdecDeclarations
Loading