Commit e4982896 authored by Bostjan Pintar's avatar Bostjan Pintar
Browse files

Merge branch 'ttf_t009' of https://forge.etsi.org/rep/emtel/NG112 into ttf_t009

parents d35bf638 a0413388
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
Package sip_commons {
	Domain {
		pics:
		- SIP_SUBSCRIPTION_ELEMENT_STATE
		- SIP_SUBSCRIPTION_SECURITY_POSTURE
		- SIP_SUBSCRIPTION_SERVICE_STATE
		;
	}
	Data {
	
		type String;
+31 −25
Original line number Diff line number Diff line
@@ -4,15 +4,15 @@ Package ecrf_commons {
		- FIND_SERVICE
		- LIST_SERVICES
		- LIST_SERVICES_BY_LOCATION
		- SIP_SUBSCRIPTION_ELEMENT_STATE
		- SIP_SUBSCRIPTION_SECURITY_POSTURE
		- SIP_SUBSCRIPTION_SERVICE_STATE
		- GEOMETRY_POINT
		- GEOMETRY_CIRCLE
		- GEOMETRY_ELLIPSE
		- GEOMETRY_ARCBAND
		- GEOMETRY_POLYGON
		- TLS_AUTHENTICATION		
		- LOOP_DETECTION
		- REDIRECT
		- RECURSION
		;
		entities:
		- IUT
@@ -22,11 +22,12 @@ Package ecrf_commons {
        - has
        - receives
        - sends
        - rejects
        ;
	}
	
	Data {
		
		type Boolean;
		type String;
		type StringList;
		type URI;
@@ -34,6 +35,7 @@ Package ecrf_commons {
		type Geometry;
		type Service;
		type ServiceList;
		type Certificate;
		
		
		type Mapping
@@ -48,7 +50,10 @@ Package ecrf_commons {
							location 		of type Geometry,
							service 		of type String,
							profile			of type String,
				serviceBoundary of type String
							serviceBoundary of type String,
				optional 	recursive 		of type Boolean,	
				optional	path			of type StringList,
				optional 	certificate 	of type Certificate		
		;
		
		type FindServiceResponse
@@ -58,10 +63,17 @@ Package ecrf_commons {
				optional 	geometry of type Geometry
		;			
		
		type RedirectResponse
			with
				target		of type URI
		;			
							
		type ListServicesRequest
			with
				optional service of type String
				optional service   of type String,
				optional path	   of type StringList							
		;
		
		type ListServicesResponse
			with
				services	of type StringList
@@ -71,7 +83,9 @@ Package ecrf_commons {
		type ListServicesByLocationRequest
			with
							location	of type Geometry,
				optional	service of type String
				optional 	recursive 	of type Boolean,				
				optional	service	 	of type String,
				optional	path		of type StringList				
		;
		
		type ListServicesByLocationResponse
@@ -85,19 +99,6 @@ Package ecrf_commons {
		;								

		
		type MappI
			with
				service of type String,
				uri		of type URI
		;
		
		type Area
			with
				geometry	of type Geometry,
				m1			of type MappI,
				m2			of type MappI 
		;
		
		Service FIRE; 	// urn:service:sos.fire
		Service POLICE;	// urn:service:sos.police	
		
@@ -113,9 +114,11 @@ Package ecrf_commons {
	    // PIXITS    	    	    
		Geometry PX_G1;
		Geometry PX_G2;		
		Geometry PX_G3;
		
		Geometry PX_POINT_IN_G1;
		Geometry PX_POINT_IN_G2;
		Geometry PX_POINT_IN_G3;
		
		Geometry PX_CIRCLE_IN_G1;
		Geometry PX_CIRCLE_IN_G2;
@@ -151,6 +154,9 @@ Package ecrf_commons {
			uri		 set to URI_POLICE_G2
		;
		
		String		PX_IUT_NAPTR;
		URI			PX_REDIRECT_TARGET;
		
		StringList	PX_CONFIGURED_SERVICES;
										
	}	
+259 −1
Original line number Diff line number Diff line
@@ -518,6 +518,212 @@ Package ECRF {
		        }
		    }
		}
		
		Test Purpose {
			TP Id TP_LOST_BV_16
			
			Test objective 
			 "IUT responds with redirect response for a findServiceRequest" 
			
			Reference 
			"ETSI TS 103 479 [1], clause XXXX",
			"EENA Next Generation 112 LTD [2], clause 4.4",
			"RFC5222 [5]"
			
			PICS Selection FIND_SERVICE and GEOMETRY_POINT and REDIRECT
			
			Initial conditions
			with {
			    the IUT entity has no typed mapping Mapping containing
			    	geometry set to PX_G3
			    	; 		    
			}
			
			Expected behaviour
		    ensure that {
		        when {
		            the IUT entity receives a (typed) request FindServiceRequest containing
		            	service	 corresponding to POLICE,
		                location corresponding to PX_POINT_IN_G3,
		                recursive set to False   
		            ;
		        }
		        then {
		            the IUT entity sends a (typed) response RedirectResponse containing
		            	target	corresponding to PX_REDIRECT_TARGET            	 
		            ;
		        }
		    }
		}

		Test Purpose {
			TP Id TP_LOST_BV_17
			
			Test objective 
			 "IUT responds with redirect response for a listServiceByLocation" 
			
			Reference 
			"ETSI TS 103 479 [1], clause XXXX",
			"EENA Next Generation 112 LTD [2], clause 4.4",
			"RFC5222 [5]"
			
			PICS Selection LIST_SERVICES_BY_LOCATION and GEOMETRY_POINT and REDIRECT
			
			Initial conditions
			with {
			    the IUT entity has no typed mapping Mapping containing
			    	geometry set to PX_G3
			    	; 		    
			}
			
			Expected behaviour
		    ensure that {
		        when {
		            the IUT entity receives a (typed) request ListServicesByLocationRequest containing
		                location corresponding to PX_POINT_IN_G3,
		                recursive set to False   
		            ;
		        }
		        then {
		            the IUT entity sends a (typed) response RedirectResponse containing
		            	target	corresponding to PX_REDIRECT_TARGET            	 
		            ;
		        }
		    }
		}
		
		Test Purpose {
			TP Id TP_LOST_BV_18
			
			Test objective 
			 "IUT responds with redirect response for a findServiceRequest" 
			
			Reference 
			"ETSI TS 103 479 [1], clause XXXX",
			"EENA Next Generation 112 LTD [2], clause 4.4",
			"RFC5222 [5]"
			
			PICS Selection FIND_SERVICE and GEOMETRY_POINT and REDIRECT and RECURSION
			
			Initial conditions
			with {
			    the IUT entity has no typed mapping Mapping containing
			    	geometry set to PX_G3
			    	; 		    
			}
			
			Expected behaviour
		    ensure that {
		        when {
		            the IUT entity receives a (typed) request FindServiceRequest containing
		            	service	 corresponding to POLICE,
		                location corresponding to PX_POINT_IN_G3,
		                recursive set to False   
		            ;
		        }
		        then {
		            the IUT entity sends a (typed) response RedirectResponse containing
		            	target	corresponding to PX_REDIRECT_TARGET            	 
		            ;
		        }
		    }
		}
		
		Test Purpose {
			TP Id TP_LOST_BV_17
			
			Test objective 
			 "IUT responds with redirect response for a listServiceByLocation" 
			
			Reference 
			"ETSI TS 103 479 [1], clause XXXX",
			"EENA Next Generation 112 LTD [2], clause 4.4",
			"RFC5222 [5]"
			
			PICS Selection LIST_SERVICES_BY_LOCATION and GEOMETRY_POINT and REDIRECT and RECURSION
			
			Initial conditions
			with {
			    the IUT entity has no typed mapping Mapping containing
			    	geometry set to PX_G3
			    	; 		    
			}
			
			Expected behaviour
		    ensure that {
		        when {
		            the IUT entity receives a (typed) request ListServicesByLocationRequest containing
		                location corresponding to PX_POINT_IN_G3,
		                recursive set to False   
		            ;
		        }
		        then {
		            the IUT entity sends a (typed) response RedirectResponse containing
		            	target	corresponding to PX_REDIRECT_TARGET            	 
		            ;
		        }
		    }
		}																									
	}
	
	Group "Errors" {
		import all from ecrf_commons;
		
		Test Purpose {
			TP Id TP_LOST_BI_01
			
			Test objective 
			 "IUT responds to an findServiceRequest with an loop error response " 
			
			Reference 
			"ETSI TS 103 479 [1], clause XXXX",
			"EENA Next Generation 112 LTD [2], clause 4.4",
			"RFC5222 [5]"
			
			PICS Selection FIND_SERVICE and LOOP_DETECTION
					
			Expected behaviour
		    ensure that {
		        when {
		            the IUT entity receives a (typed) request FindServiceRequest containing
		            	path carrying PX_IUT_NAPTR          	              
		            ;
		        }
		        then {
		            the IUT entity sends a (typed) response ErrorResponse containing
		            	errors indicating value "loop"		            	
		            ;
		        }
		    }
		}
		
		Test Purpose {
			TP Id TP_LOST_BI_02
			
			Test objective 
			 "IUT responds to an listServiceByLocation with an loop error response " 
			
			Reference 
			"ETSI TS 103 479 [1], clause XXXX",
			"EENA Next Generation 112 LTD [2], clause 4.4",
			"RFC5222 [5]"
			
			PICS Selection LIST_SERVICES_BY_LOCATION and LOOP_DETECTION
					
			Expected behaviour
		    ensure that {
		        when {
		            the IUT entity receives a (typed) request ListServicesByLocationRequest containing
		            	path carrying PX_IUT_NAPTR          	              
		            ;
		        }
		        then {
		            the IUT entity sends a (typed) response ErrorResponse containing
		            	errors indicating value "loop"		            	
		            ;
		        }
		    }
		}				
	}
		

@@ -728,6 +934,58 @@ Package ECRF {
	}
	
	Group "Security" {
		import all from ecrf_commons;
		
	    Test Purpose {   
	        TP Id TP_TLS_BI_01	       
	        
	        Test objective 
        	"IUT rejects requests without a certificate" 
	        
	        Reference
        	"ETSI TS 103 479 [1], clause 5.5",        	    		        	
    		"EENA Next Generation 112 LTD [2], Clause 4.10",
    		"RFC5985 [3]"   		
	      	      	
			PICS Selection TLS_AUTHENTICATION	
	     	      	    					
	        Expected behaviour	       
	        ensure that {  
            	when { 
            		the IUT entity receives any FindServiceRequest containing
            			not certificate 
            			;					
              	} 
              	then {
                	the IUT entity rejects the Connection
        	  	}           	 
	        }
	    }
	    
	    Test Purpose {   
	        TP Id TP_TLS_BI_02	       
	        
	        Test objective 
        	"IUT rejects SIP requests without a certificate" 
	        
	        Reference
        	"ETSI TS 103 479 [1], clause 5.5",        	    		        	
    		"EENA Next Generation 112 LTD [2], Clause 4.10",
    		"RFC5985 [3]"   		
	      	      	
			PICS Selection TLS_AUTHENTICATION	
	     	      	    					
	        Expected behaviour	       
	        ensure that {  
            	when { 
            		the IUT entity receives any SubscribeRequest containing
            			not certificate 
            			;					
              	} 
              	then {
                	the IUT entity rejects the Connection
        	  	}           	 
	        }
	    }  			
	} 
}
 No newline at end of file
+202 −81
Original line number Diff line number Diff line
@@ -353,86 +353,207 @@ Package ESRP {
		}
	}
			
	Group 'Event Subscriptions' {
	Group "Subscriptions/Notifications" {
		import all from esrp_commons;
    	import all from sip_commons;
    	
		Test Purpose {   
			TP Id TP_ESRP_SIP_SECURITY_POSTURE_BV_01
	        TP Id TP_SIP_BV_01	       
	        
	        Test objective 
	    		"Verify that the IUT handles SUBSCRIBE request for security posture"
        	"IUT responds to SIP Subscribe for Element State with an 200 OK" 
	        
	        Reference
	    		"TS 103 479, 5.2.2., SIP-E3"
        	"ETSI TS 103 479 [1], clause 5.3",
    		"EENA Next Generation 112 LTD [2], Clause 4.10",
    		"RFC5985 [3]"
	      	      	
			PICS Selection SIP_SUBSCRIPTION_ELEMENT_STATE				     	      	    
			
	      	PICS Selection PICS_SECURITY_POSTURE_SUPPORT
	        Expected behaviour	       
	        ensure that {  
            	when { 
					the IUT entity receives
						a SECURITY_POSTURE_SUBSCRIBE_REQUEST
						from the UPSTREAM entity
        	    	the IUT entity receives a SubscribeRequest containing 
        	    		"event" set to "emergency-ElementState"
        	    		;       	    		    	    		        	    		
              	}
              	then {
					the IUT entity returns
						a SECURITY_POSTURE_SUBSCRIBE_RESPONSE
					to the UPSTREAM entity 
					and 
					the IUT entity sends
						a SECURITY_POSTURE_NOTIFICATION_REQUEST
					to the UPSTREAM entity
                	the IUT entity sends an OkResponse
                	and the IUT entity sends a Notify containing
                		ElementState containing
                			state corresponding to normal                			
                			;
                		;
        	  	}       	 
	        }
	    }
	    
		Test Purpose {   
	        TP Id TP_SIP_BV_02	       
	        
	        Test objective 
        	"IUT responds to SIP Unsubscribe with an 200 OK" 
	        
	        Reference
        	"ETSI TS 103 479 [1], clause 6.5.3.2",
    		"EENA Next Generation 112 LTD [2], Clause 4.10",
    		"RFC5985 [3]"
	      	      	
			PICS Selection SIP_SUBSCRIPTION_ELEMENT_STATE		
	     	      	    
	        Initial conditions
	        with {        	
	    		the IUT entity receives a UnsubscribeRequest containing 
    	    		"event" set to "emergency-ElementState"
    	    		;  
				and the IUT entity sends an OkResponse
				and the IUT entity sends a Notify
			}
			
			
	        Expected behaviour	       
	        ensure that {  
            	when { 
        	    	the IUT entity receives a UnsubscribeRequest containing
        	    		"event" set to "emergency-ElementState"
        	    		;        	    		    	    		        	    		
              	}
              	then {
                	the IUT entity sends an OkResponse
        	  	}       	 
	        }
	    }
	    
		Test Purpose {   
			TP Id TP_ESRP_SIP_ELEMENT_STATE_BV_01
	        TP Id TP_SIP_BV_03	       
	        
	        Test objective 
	    		"Verify that the IUT handles SUBSCRIBE request for element state"
        	"IUT responds to SIP Subscribe for SecurityPosture with an 200 OK" 
	        
	        Reference
	    		"TS 103 479, 5.2.2., SIP-E4"
        	"ETSI TS 103 479 [1], clause 5.3",
    		"EENA Next Generation 112 LTD [2], Clause 4.10",
    		"RFC5985 [3]"
	      	      	
			PICS Selection SIP_SUBSCRIPTION_SECURITY_POSTURE				     	      	    
			
	      	PICS Selection PICS_ELEMENT_STATE_SUPPORT
	        Expected behaviour	       
	        ensure that {  
            	when { 
					the IUT entity receives
						a ELEMENT_STATE_SUBSCRIBE_REQUEST
						from the UPSTREAM entity
        	    	the IUT entity receives a SubscribeRequest containing 
        	    		"event" set to "emergency-SecurityPosture"
        	    		;       	    		    	    		        	    		
              	}
              	then {
					the IUT entity returns
						a ELEMENT_STATE_SUBSCRIBE_RESPONSE
					to the UPSTREAM entity 
					and 
					the IUT entity sends
						a SELEMENT_STATE_NOTIFICATION_REQUEST
					to the UPSTREAM entity
                	the IUT entity sends an OkResponse
                	and the IUT entity sends a Notify containing
                		SecurityPosture containing
                			posture corresponding to green                			
                			;
                		;
        	  	}       	 
	        }
	    }
	    
		Test Purpose {   
			TP Id TP_ESRP_SIP_SERVICE_STATE_BV_01
	        TP Id TP_SIP_BV_04	       
	        
	        Test objective 
	    		"Verify that the IUT handles SUBSCRIBE request for service state"
        	"IUT responds to SIP Unsubscribe with an 200 OK" 
	        
	        Reference
	    		"TS 103 479, 5.2.2., SIP-E5"
        	"ETSI TS 103 479 [1], clause 6.5.3.2",
    		"EENA Next Generation 112 LTD [2], Clause 4.10",
    		"RFC5985 [3]"
	      	      	
			PICS Selection SIP_SUBSCRIPTION_SECURITY_POSTURE		
	     	      	    
	        Initial conditions
	        with {        	
	    		the IUT entity receives a UnsubscribeRequest containing 
    	    		"event" set to "emergency-SecurityPosture"
    	    		;  
				and the IUT entity sends an OkResponse
				and the IUT entity sends a Notify
			}
			
			
	      	PICS Selection PICS_SERVICE_STATE_SUPPORT
	        Expected behaviour	       
	        ensure that {  
            	when { 
					the IUT entity receives
						a SEVICE_STATE_SUBSCRIBE_REQUEST
						from the UPSTREAM entity
        	    	the IUT entity receives a UnsubscribeRequest containing
        	    		"event" set to "emergency-SecurityPosture"
        	    		;        	    		    	    		        	    		
              	}
              	then {
					the IUT entity returns
						a SEVICE_STATE_SUBSCRIBE_RESPONSE
					to the UPSTREAM entity 
					and 
					the IUT entity sends
						a SEVICE_STATE_NOTIFICATION_REQUEST
					to the UPSTREAM entity
                	the IUT entity sends an OkResponse
        	  	}       	 
	        }
	    }	 
	    
		Test Purpose {   
	        TP Id TP_SIP_BV_05	       
	        
	        Test objective 
        	"IUT responds to SIP Subscribe for ServiceState with an 200 OK" 
	        
	        Reference
        	"ETSI TS 103 479 [1], clause 5.3",
    		"EENA Next Generation 112 LTD [2], Clause 4.10",
    		"RFC5985 [3]"
	      	      	
			PICS Selection SIP_SUBSCRIPTION_SERVICE_STATE				     	      	    
			
	        Expected behaviour	       
	        ensure that {  
            	when { 
        	    	the IUT entity receives a SubscribeRequest containing 
        	    		"event" set to "emergency-ServiceState"
        	    		;       	    		    	    		        	    		
              	}
              	then {
                	the IUT entity sends an OkResponse
                	and the IUT entity sends a Notify containing
                		ServiceState containing
                			state corresponding to normal                			
                			;
                		;
        	  	}       	 
	        }
	    }
	    
		Test Purpose {   
	        TP Id TP_SIP_BV_06	       
	        
	        Test objective 
        	"IUT responds to SIP Unsubscribe with an 200 OK" 
	        
	        Reference
        	"ETSI TS 103 479 [1], clause 6.5.3.2",
    		"EENA Next Generation 112 LTD [2], Clause 4.10",
    		"RFC5985 [3]"
	      	      	
			PICS Selection SIP_SUBSCRIPTION_SERVICE_STATE		
	     	      	    
	        Initial conditions
	        with {        	
	    		the IUT entity receives a UnsubscribeRequest containing 
    	    		"event" set to "emergency-ServiceState"
    	    		;  
				and the IUT entity sends an OkResponse
				and the IUT entity sends a Notify
			}
			
			
	        Expected behaviour	       
	        ensure that {  
            	when { 
        	    	the IUT entity receives a UnsubscribeRequest containing
        	    		"event" set to "emergency-ServiceState"
        	    		;        	    		    	    		        	    		
              	}
              	then {
                	the IUT entity sends an OkResponse
        	  	}       	 
	        }
	    }	       		
+2 −0
Original line number Diff line number Diff line
@@ -214,6 +214,8 @@ Expected behaviour
    }
} //End of TP_LIS_HTTP_POST_BV_02



Test Purpose {
TP Id TP_LIS_HTTP_POST_BV_03
Test objective 
Loading