Commit 4186d1ae authored by ASN.1 Documenter's avatar ASN.1 Documenter
Browse files

Initial

parent 5765b972
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.

+55 −0
Original line number Diff line number Diff line
/**
 *  @author      ETSI / STF405 / STF449 / STF484 / STF517 / STF 538
 *  @desc        Module containing functions 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 LibItsGeoNetworking_EncdecDeclarations {
    
    import from LibItsGeoNetworking_TypesAndValues all;
    import from LibItsGeoNetworking_TestSystem 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
+2836 −0

File added.

Preview size limit exceeded, changes collapsed.

Loading