Commit c66f2831 authored by rennoch's avatar rennoch
Browse files

completion of f_TC_S1AP_eNB_CMP_08

parent 7ebbe3b3
Loading
Loading
Loading
Loading
+32 −2
Original line number Diff line number Diff line
@@ -2144,6 +2144,35 @@ module LibS1AP_Templates {
                value_ := {SecurityKey := valueof(p_value)}
            } // End of template m_securityKey_IE

			/**
			 * @desc Send template for correlation ID IE
			 * @param p_value  UESecurityCapabilities value
			 * @see ETSI TS 136 413 V13.4.0 Clause 9.2.1.80 correlation ID
			 */
			template (value) ProtocolIE m_correlationID_IE(
												   in template (value) Correlation_ID p_value,
												   in template (value) ProtocolIE.criticality p_criticality := ignore
			) := {
				id := S1AP_Constants.id_Correlation_ID,
				criticality := p_criticality,
				value_ := {Correlation_ID := valueof(p_value)}
			} // End of template m_correlationID_IE


			/**
			 * @desc Send template for correlation ID IE
			 * @param p_value  UESecurityCapabilities value
			 * @see ETSI TS 136 413 V13.4.0 Clause 9.2.1.80 SIPTO correlation ID
			 */
			template (value) ProtocolIE m_SIPTO_correlationID_IE(
												   in template (value) Correlation_ID p_value,
												   in template (value) ProtocolIE.criticality p_criticality := ignore
			) := {
				id := S1AP_Constants.id_SIPTO_Correlation_ID,
				criticality := p_criticality,
				value_ := {Correlation_ID := valueof(p_value)}
			} // End of template m_SIPTO_correlationID_IE
            
            group E_RAB_IEsend {
                
                /**
@@ -3065,14 +3094,15 @@ module LibS1AP_Templates {
                                                                                          in template (value) E_RABLevelQoSParameters p_e_RABlevelQoSParameters := m_e_RABlevelQoSParameters,
                                                                                          in template (value) TransportLayerAddress p_transportLayerAddress := '0'B,
                                                                                          in template (value) GTP_TEID p_gTP_TEID := '00000000'O,
                                                                                          in template (value) NAS_PDU p_nAS_PDU := '0000'O
                                                                                          in template (value) NAS_PDU p_nAS_PDU := '0000'O,
                                                                                          in template (value) E_RABToBeSetupItemBearerSUReq.iE_Extensions p_iE_Extensions := omit
            ) := {
                e_RAB_ID := p_e_RAB_ID,
                e_RABlevelQoSParameters := valueof(p_e_RABlevelQoSParameters),
                transportLayerAddress := p_transportLayerAddress,
                gTP_TEID := p_gTP_TEID,
                nAS_PDU := p_nAS_PDU,
                iE_Extensions := omit
                iE_Extensions := p_iE_Extensions
            } // End of template m_E_RABToBeSetupItemBearerSUReq
            
            /**
+54 −0
Original line number Diff line number Diff line
@@ -803,6 +803,60 @@ module S1AP_TCFunctions {
                
            } // End of function f_TC_S1AP_eNB_CMP_07
            
            /**
             * @desc Testcase function for TC_S1AP_eNB_CMP_08
             */
            function f_TC_S1AP_eNB_CMP_08() runs on S1APComponent { 
                // Local variables
                const E_RAB_ID c_E_RAB_ID_A := 0;
				const TransportLayerAddress c_transportLayerAddress := '0'B;
				const GTP_TEID c_gTP_TEID := '00000000'O;
				const NAS_PDU c_nAS_PDU := '0000'O;
                // Preamble
                f_S1AP_enb_init();
                f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); 
                log("*** " & __SCOPE__ & ": INFO: Preamble done. ***");
                
                // Test body
				f_send_InitialContext_SetupRequest(m_InitialContextSetupReqIEs(
                    vc_MME_UE_ID,
                    vc_eNB_UE_ID,
				    m_UEAggregateMaximumBitrate(1,1),
                    {m_E_RABToBeSetupItemBearerSUReq (
                        c_E_RAB_ID_A,
                        m_e_RABlevelQoSParameters
                        (1),
						c_transportLayerAddress,
						c_gTP_TEID,
						c_nAS_PDU,
						{m_correlationID_IE('01020304'O), m_SIPTO_correlationID_IE('01020304'O)} // iE_Extensions
                    )},
				    m_UESecurityCapabilities('0101010101010101'B,'0101010101010101'B),
				    m_securityKey
                ));

				f_recv_InitialContext_SetupResponse(mw_InitialContextSetupResIEs(
                    vc_MME_UE_ID,
                    vc_eNB_UE_ID,
                    -,
					{
						mw_E_RABItem(
							c_E_RAB_ID_A,
							?
						)
					}
                ));
                
                
                // Postamble
                f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); 
                
                f_postamble_S1AP_eNB();
                f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); 
                log("*** " & __SCOPE__ & ": INFO: Postamble done. ***");
                
            } // End of function f_TC_S1AP_eNB_CMP_08


        } // End of group Context_management_group