ItsGeoNetworking_TestControl.ttcn 13.9 KB
Newer Older
filatov's avatar
filatov committed
/**
garciay's avatar
garciay committed
 *  @author     ETSI / STF405 / STF449 / STF484
filatov's avatar
filatov committed
 *  @version    $URL$
 *              $Id$
 *  @desc       Test Control file for GeoNetworking
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.
filatov's avatar
filatov committed
 *
 */
module ItsGeoNetworking_TestControl {
    
    // ATS GeoNetworking
    import from ItsGeoNetworking_TestCases {testcase all};
    
    // LibItsGeoNetworking
filatov's avatar
filatov committed
    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) {
filatov's avatar
filatov committed
        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) {
filatov's avatar
filatov committed
        execute(TC_GEONW_PON_FPB_BV_12_01());
filatov's avatar
filatov committed
        execute(TC_GEONW_PON_FPB_BV_12_02());
filatov's avatar
filatov committed
        execute(TC_GEONW_PON_FPB_BV_12_03());
filatov's avatar
filatov committed
        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());
        if(PICS_GN_BEACON_SRC) {
            execute(TC_GEONW_PON_BEA_TI_01());
            execute(TC_GEONW_PON_BEA_TI_02());
berge's avatar
berge committed
        /* 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());
			}
berge's avatar
berge committed
            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());
				}
berge's avatar
berge committed
    
            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());
				}
berge's avatar
berge committed
    		
        }
        
        /* 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());
				}
berge's avatar
berge committed
                
			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());
				}
			}
		}
berge's avatar
berge committed
		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());
			}
		}
berge's avatar
berge committed
		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());
			}
		}
		        
berge's avatar
berge committed
		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 ItsGeoNetworking_TestControl