| /////////////////////////////////////////////////////////////////////////////// |
| // Copyright (c) 2000-2018 Ericsson Telecom AB |
| // All rights reserved. This program and the accompanying materials |
| // are made available under the terms of the Eclipse Public License v2.0 |
| // which accompanies this distribution, and is available at |
| // https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html |
| /////////////////////////////////////////////////////////////////////////////// |
| // |
| // File: GTPv2_Test.ttcn |
| // Description: GTPv2 15.2.0 protocol module example test |
| // Rev: <RnXnn> |
| // Prodnr: CNL 113 870 |
| // Contact: http://ttcn.ericsson.se |
| /////////////////////////////////////////////////////////////////////////////// |
| |
| module GTPv2_Test |
| { |
| |
| import from GTPv2_Types all; |
| |
| type component ct_GTPv2{} |
| |
| |
| template PDU_GTPCv2 t_pdu_gtpcv2 (octetstring pl_messageType,GTPCv2_PDUs pl_pdu) :={ |
| spare := '00'B, |
| mp_Bit_or_Spare := '1'B, |
| t_Bit := '0'B, |
| p_Bit := '0'B, |
| version := '010'B, |
| messageType := pl_messageType, |
| lengthf := 0, |
| tEID := omit, |
| sequenceNumber := '000000'O, |
| spare3 := '0000'B, // 0 |
| messagePriorityOrSpare := '0001'B, |
| gtpcv2_pdu := pl_pdu, |
| piggybackPDU_GTPCv2 := omit |
| } |
| //Echo Request, Echo Response and Version Not Supported Indication messages |
| template PDU_GTPCv2 t_pdu_gtpcv2_2 (octetstring pl_messageType,GTPCv2_PDUs pl_pdu) modifies t_pdu_gtpcv2:={ |
| mp_Bit_or_Spare := '0'B, |
| messageType := pl_messageType, |
| lengthf := 0, |
| messagePriorityOrSpare := '0000'B, |
| gtpcv2_pdu := pl_pdu |
| } |
| |
| template PDU_GTPCv2 t_m_pdu_gtpcv2 (octetstring pl_messageType,GTPCv2_PDUs pl_pdu) modifies t_pdu_gtpcv2 := { |
| lengthf := ? |
| } |
| |
| template PDU_GTPCv2 t_m_pdu_gtpcv2_2 (octetstring pl_messageType,GTPCv2_PDUs pl_pdu) modifies t_pdu_gtpcv2_2 := { |
| lengthf := ? |
| } |
| |
| template AccessPointName t_accessPointName := { |
| elementIdentifier := '47'O, |
| lengthIndicator := 4, |
| instance := '0000'B, |
| spare := '0000'B, |
| aPN_Value := 'AAAAAAAA'O |
| } |
| |
| template AggregateMaximumBitRate t_ambr := { |
| elementIdentifier := '48'O, |
| lengthIndicator := 8, |
| instance := '0000'B, |
| spare := '0000'B, |
| aPN_AMBR_for_uplink := 'AAAAAAAA'O, |
| aPN_AMBR_for_downlink := 'BBBBBBBB'O |
| } |
| |
| template Cause t_cause := { |
| elementIdentifier := '02'O, |
| lengthIndicator := 2, |
| instance := '0000'B, |
| spare := '0000'B, |
| causeValue := '02'O, |
| cS := '1'B, |
| bCE := '1'B, |
| pCE := '1'B, |
| spare2 := '11111'B, |
| typeOfOffendingIE := omit, |
| lengthIndicator2 := omit, |
| instanceOfOffendingIE := omit, |
| spare3 := omit |
| }; |
| |
| template RAN_NASCause t_RAN_NASCause1 := { |
| elementIdentifier := 'AC'O, |
| lengthIndicator := 2, |
| instance := '0000'B, |
| spare := '0000'B, |
| causeType := '0001'B, |
| protocolType := '0001'B, |
| causeValue := 'AA'O, |
| additionalOctets := omit |
| } |
| template RAN_NASCause t_RAN_NASCause2 modifies t_RAN_NASCause1 := { |
| causeValue := 'BB'O |
| } |
| |
| template BearerContextGrouped t_m_bearerContextGrouped ( |
| template Cause pl_cause := t_cause, |
| template RAN_NASCause pl_RAN_NASCause1 := t_RAN_NASCause1, |
| template RAN_NASCause pl_RAN_NASCause2 := t_RAN_NASCause2) |
| modifies t_bearerContextGrouped:= { |
| lengthIndicator := 18, |
| bearerContextIEs := |
| { |
| rAN_NASCause := {pl_RAN_NASCause1,pl_RAN_NASCause2} |
| } |
| } |
| |
| |
| template BearerContextGrouped t_bearerContextGrouped (template Cause pl_cause := t_cause):= { |
| elementIdentifier := '5D'O, |
| lengthIndicator := 6, |
| instance := '0000'B, |
| spare := '0000'B, |
| bearerContextIEs := |
| { |
| ePS_Bearer_ID := omit, |
| cause := pl_cause, |
| ePS_Bearer_TFT := omit, |
| fullyQualifiedTEID := omit, |
| bearerLevel_QoS := omit, |
| chargingID := omit, |
| bearerFlags := omit, |
| transactionIdentifier := omit, |
| protocolConfigOptions := omit, |
| rAN_NASCause := omit, |
| additionalProtocolConfigOptions := omit, |
| extendedProtocolConfigOptions := omit |
| } |
| } |
| |
| template CNOperatorSelectionEntity t_cNOperatorSelectionEntity := { |
| elementIdentifier := 'AD'O, |
| lengthIndicator := 1, |
| instance := '0000'B, |
| spare := '0000'B, |
| selectionEntity := '01'B, |
| spare2 := '000000'B, |
| additionalOctets := omit |
| } |
| |
| template EPC_Timer t_ePCTimer := { |
| elementIdentifier := '9C'O, |
| lengthIndicator := 1, |
| instance := '1111'B, |
| spare := '0000'B, |
| timerValue := 2, |
| timerUnit := '111'B, |
| additionalOctets := omit |
| } |
| |
| template EPS_BearerID t_ePS_BearerID := { |
| elementIdentifier := '49'O, |
| lengthIndicator := 1, |
| instance := '1111'B, |
| spare := '0000'B, |
| ePS_Bearer_ID_Value := 4, |
| spare2 := '0000'B, |
| additionalOctets := omit |
| } |
| template FullyQualifiedTEID t_fullyQualifiedTEID:= { |
| elementIdentifier := '57'O, |
| lengthIndicator := 9, |
| instance := '0000'B, |
| spare := '0000'B, |
| interfaceType := 24, |
| v6_Flag := '0'B, |
| v4_Flag := '1'B, |
| tEID_GRE_Key := '00000003'O, |
| iPv4_Address := '1F801238'O, |
| iPv6_Address := omit, |
| additionalOctets := omit |
| } |
| |
| template IMSI t_iMSI := { |
| elementIdentifier := '01'O, |
| lengthIndicator := 8, |
| instance := '0000'B, |
| spare := '0000'B, |
| iMSI_Value := '12345678901234F5'H |
| } |
| |
| template Indication t_indicationFlags := { |
| elementIdentifier := '4D'O, |
| lengthIndicator := 7, |
| instance := '0000'B, |
| spare := '0000'B, |
| sGWCI := '1'B, |
| iSRAI := '1'B, |
| iSRSI := '1'B, |
| oI := '1'B, |
| dFI := '1'B, |
| hI := '1'B, |
| dTF := '1'B, |
| dAF := '1'B, |
| mSV := '1'B, |
| sI := '1'B, |
| pT := '1'B, |
| pBit := '1'B, |
| cRSI := '1'B, |
| cFSI := '1'B, |
| uIMSI := '1'B, |
| sQCI := '1'B, |
| cCRSI := '1'B, |
| iSRAU := '1'B, |
| mBMDT := '1'B, |
| s4AF := '1'B, |
| s6AF := '1'B, |
| sRNI := '1'B, |
| pBIC := '1'B, |
| retLoc := '1'B, |
| cPSR := '1'B, |
| cLII := '1'B, |
| cSFBI := '1'B, |
| pPSI := '1'B, |
| pPON_PPEI := '1'B, |
| pPOF := '1'B, |
| aRRL := '1'B, |
| cPRAI := '1'B, |
| aOPI := '1'B, |
| aOSI := '1'B, |
| pCRI := '1'B, |
| pSCI := '1'B, |
| bDWI := '1'B, |
| dTCI := '1'B, |
| uASI := '1'B, |
| nSI := '1'B, |
| wPMSI := '1'B, |
| uNACCSI := '1'B, |
| pNSI := '1'B, |
| s11TF := '1'B, |
| pMTSMI := '1'B, |
| cPOPCI := '1'B, |
| ePCOSI := '1'B, |
| rOAAI := '1'B, |
| tSPCMI := '0'B, |
| eNBCRSI := '0'B, |
| spare_1 := '0'B, |
| spare_2 := '0'B, |
| spare_3 := '0'B, |
| spare_4 := '0'B, |
| spare_5 := '0'B, |
| spare_6 := '0'B, |
| additionalOctets := omit |
| }; |
| |
| template Indication t_indicationFlags2 := { |
| elementIdentifier := '4D'O, |
| lengthIndicator := 2, |
| instance := '0000'B, |
| spare := '0000'B, |
| sGWCI := '1'B, |
| iSRAI := '1'B, |
| iSRSI := '1'B, |
| oI := '1'B, |
| dFI := '1'B, |
| hI := '1'B, |
| dTF := '1'B, |
| dAF := '1'B, |
| mSV := '1'B, |
| sI := '1'B, |
| pT := '1'B, |
| pBit := '1'B, |
| cRSI := '1'B, |
| cFSI := '1'B, |
| uIMSI := '1'B, |
| sQCI := '1'B, |
| cCRSI := omit, |
| iSRAU := omit, |
| mBMDT := omit, |
| s4AF := omit, |
| s6AF := omit, |
| sRNI := omit, |
| pBIC := omit, |
| retLoc := omit, |
| cPSR := omit, |
| cLII := omit, |
| cSFBI := omit, |
| pPSI := omit, |
| pPON_PPEI := omit, |
| pPOF := omit, |
| aRRL := omit, |
| cPRAI := omit, |
| aOPI := omit, |
| aOSI := omit, |
| pCRI := omit, |
| pSCI := omit, |
| bDWI := omit, |
| dTCI := omit, |
| uASI := omit, |
| nSI := omit, |
| wPMSI := omit, |
| uNACCSI := omit, |
| pNSI := omit, |
| s11TF := omit, |
| pMTSMI := omit, |
| cPOPCI := omit, |
| ePCOSI := omit, |
| rOAAI := omit, |
| tSPCMI := omit, |
| eNBCRSI := omit, |
| spare_1 := omit, |
| spare_2 := omit, |
| spare_3 := omit, |
| spare_4 := omit, |
| spare_5 := omit, |
| spare_6 := omit, |
| additionalOctets := omit |
| }; |
| |
| template IP_Address t_IP_Address := { |
| elementIdentifier := '4A'O, |
| lengthIndicator := 4, |
| instance := '1111'B, |
| spare := '0000'B, |
| iPv4_IPv6_Address := { |
| iPv4_Address := '01020304'O |
| } |
| } |
| |
| template IPv4ConfigurationPrameters t_IPv4ConfigurationPrameters := { |
| elementIdentifier := 'A6'O, |
| lengthIndicator := 5, |
| instance := '1111'B, |
| spare := '0000'B, |
| subnetPrefixLength := 1, |
| iPv4DefaultRouterAddress := '01020304'O, |
| additionalOctets := omit |
| } |
| |
| template LoadControlInformationGrouped t_loadControlInformationGrouped (template SequenceNumber pl_sequenceNumber := t_sequenceNumber,template Metric pl_metric := t_metric):= { |
| elementIdentifier := 'B5'O, |
| lengthIndicator := 13, |
| instance := '1111'B, |
| spare := '0000'B, |
| loadControlInformationIEs := { |
| loadControlSequenceNumber := pl_sequenceNumber, |
| loadMetric := pl_metric, |
| listOfAPNandRelativeCapacity := omit |
| } |
| } |
| |
| template Metric t_metric := { |
| elementIdentifier := 'B6'O, |
| lengthIndicator := 1, |
| instance := '1111'B, |
| spare := '0000'B, |
| metric := 10 |
| } |
| |
| template NodeIdentifier t_nodeIdentifier := { |
| elementIdentifier := 'B0'O, |
| lengthIndicator := 10, |
| instance := '1111'B, |
| spare := '0000'B, |
| lenghOfNodeName := 4, |
| nodeName := '01020304'O, |
| lenghOfNodeRealm := 4, |
| nodeRealm := '01020304'O, |
| additionalOctets := omit |
| } |
| |
| template NodeNumber t_nodeNumber := { |
| elementIdentifier := 'AF'O, |
| lengthIndicator := 5, |
| instance := '1111'B, |
| spare := '0000'B, |
| lenghOfNodeNumber := 4, |
| nodeNumber := '01020304'O, |
| additionalOctets := omit |
| } |
| |
| template OverloadControlInformationGrouped t_overloadControlInformationGrouped (template SequenceNumber pl_sequenceNumber := t_sequenceNumber,template Metric pl_metric := t_metric,template EPC_Timer pl_ePCTimer := t_ePCTimer):= { |
| elementIdentifier := 'B4'O, |
| lengthIndicator := 18, |
| instance := '1111'B, |
| spare := '0000'B, |
| overloadControlInformationIEs := { |
| overloadControlSequenceNumber := pl_sequenceNumber, |
| overloadReductionMetric := pl_metric, |
| periodOfValidity := pl_ePCTimer, |
| listOfAccessPointName := omit |
| } |
| |
| } |
| |
| template PresenceReportingAreaAction t_presenceReportingAreaAction := { |
| elementIdentifier := 'B1'O, |
| lengthIndicator := 69, |
| instance := '1111'B, |
| spare := '0000'B, |
| actionField := '111'B, |
| iNAPRA := '1'B, |
| spare2 := '0000'B, |
| presenceReportingAreaIdentifier := '010203'O, |
| numberOfRAI := 1, |
| numberOfTAI := 1, |
| numberOfMacroENodeB := 1, |
| spare3 := '00'B, |
| numberOfHomeENodeB := 1, |
| spare4 := '00'B, |
| numberOfECGI := 1, |
| spare5 := '00'B, |
| numberOfSAI := 1, |
| spare6 := '00'B, |
| numberOfCGI := 1, |
| spare7 := '00'B, |
| tAIs := { |
| { |
| mccDigit1 := '2'H, |
| mccDigit2 := '4'H, |
| mccDigit3 := '0'H, |
| mncDigit3 := 'F'H, |
| mncDigit1 := '9'H, |
| mncDigit2 := '9'H, |
| tAC := '0102'O |
| } |
| }, |
| macroENBIDs := { |
| { |
| mccDigit1 := '2'H, |
| mccDigit2 := '4'H, |
| mccDigit3 := '0'H, |
| mncDigit3 := 'F'H, |
| mncDigit1 := '9'H, |
| mncDigit2 := '9'H, |
| spare2 := '0000'B, |
| targetID := '00110011001100110011'B |
| } |
| }, |
| homeENBIDs := { |
| { |
| mccDigit1 := '2'H, |
| mccDigit2 := '4'H, |
| mccDigit3 := '0'H, |
| mncDigit3 := 'F'H, |
| mncDigit1 := '9'H, |
| mncDigit2 := '9'H, |
| spare2 := '0000'B, |
| targetID := '0011001100110011001100110011'B |
| } |
| }, |
| eCGIs := { |
| { |
| mccDigit1 := '2'H, |
| mccDigit2 := '4'H, |
| mccDigit3 := '0'H, |
| mncDigit3 := 'F'H, |
| mncDigit1 := '9'H, |
| mncDigit2 := '9'H, |
| spare := '0'H, |
| eCI := 123 |
| } |
| }, |
| rAIs := { |
| { |
| mccDigit1 := '2'H, |
| mccDigit2 := '4'H, |
| mccDigit3 := '0'H, |
| mncDigit3 := 'F'H, |
| mncDigit1 := '9'H, |
| mncDigit2 := '9'H, |
| lAC := '0102'O, |
| rAC := '0304'O |
| } |
| }, |
| sAIs := { |
| { |
| mccDigit1 := '2'H, |
| mccDigit2 := '4'H, |
| mccDigit3 := '0'H, |
| mncDigit3 := 'F'H, |
| mncDigit1 := '9'H, |
| mncDigit2 := '9'H, |
| lAC := '0102'O, |
| sAC := '0304'O |
| } |
| }, |
| cGIs := { |
| { |
| mccDigit1 := '2'H, |
| mccDigit2 := '4'H, |
| mccDigit3 := '0'H, |
| mncDigit3 := 'F'H, |
| mncDigit1 := '9'H, |
| mncDigit2 := '9'H, |
| lAC := '0102'O, |
| cI := '0304'O |
| } |
| }, |
| numberOfExtendedMacroENODEB := 2, |
| spare8 := '00'B, |
| extendedMacroENBIDs := { |
| { |
| mccDigit1 := '2'H, |
| mccDigit2 := '4'H, |
| mccDigit3 := '0'H, |
| mncDigit3 := 'F'H, |
| mncDigit1 := '9'H, |
| mncDigit2 := '9'H, |
| spare := '00'B, |
| sMeNB := '0'B, |
| targetID := '000000000000000000001'B |
| }, |
| { |
| mccDigit1 := '2'H, |
| mccDigit2 := '4'H, |
| mccDigit3 := '0'H, |
| mncDigit3 := 'F'H, |
| mncDigit1 := '9'H, |
| mncDigit2 := '9'H, |
| spare := '00'B, |
| sMeNB := '0'B, |
| targetID := '000000000000000000011'B |
| } |
| }, |
| additionalOctets := omit |
| } |
| |
| template PresenceReportingAreaAction t_presenceReportingAreaAction2 := { |
| elementIdentifier := 'B1'O, |
| lengthIndicator := 10, |
| instance := '1111'B, |
| spare := '0000'B, |
| actionField := '111'B, |
| iNAPRA := '1'B, |
| spare2 := '0000'B, |
| presenceReportingAreaIdentifier := '010203'O, |
| numberOfRAI := 0, |
| numberOfTAI := 0, |
| numberOfMacroENodeB := 0, |
| spare3 := '00'B, |
| numberOfHomeENodeB := 0, |
| spare4 := '00'B, |
| numberOfECGI := 0, |
| spare5 := '00'B, |
| numberOfSAI := 0, |
| spare6 := '00'B, |
| numberOfCGI := 0, |
| spare7 := '00'B, |
| tAIs := omit, |
| macroENBIDs := omit, |
| homeENBIDs := omit, |
| eCGIs := omit, |
| rAIs := omit, |
| sAIs := omit, |
| cGIs := omit, |
| numberOfExtendedMacroENODEB := omit, |
| spare8 := omit, |
| extendedMacroENBIDs := omit, |
| additionalOctets := omit |
| } |
| |
| template PresenceReportingAreaInformation t_presenceReportingAreaInformation := { |
| elementIdentifier := 'B2'O, |
| lengthIndicator := 12, |
| instance := '0000'B, |
| spare := '0000'B, |
| presenceReportingAreaIdentifier := '010203'O, |
| iPRA := '1'B, |
| oPRA := '0'B, |
| aPRA := '1'B, |
| iNAPRA := '0'B, |
| spare2 := '0000'B, |
| additionalPRA := { |
| additionalPRA_Identifier := '000001'O, |
| iPRA := '1'B, |
| oPRA := '0'B, |
| aPRA := '1'B, |
| spare := '00000'B, |
| additionalPRA := |
| { |
| additionalPRA_Identifier := '000002'O, |
| iPRA := '1'B, |
| oPRA := '0'B, |
| aPRA := '0'B, |
| spare := '00000'B, |
| additionalPRA := omit |
| } |
| }, |
| additionalOctets := omit |
| } |
| |
| template ProcedureTransactionID t_procedureTransactionID := { |
| elementIdentifier := '64'O, |
| lengthIndicator := 1, |
| instance := '1111'B, |
| spare := '0000'B, |
| pTI_Value := 5, |
| additionalOctets := omit |
| } |
| |
| template RAN_NASCause t_rAN_NASCause := { |
| elementIdentifier := 'AC'O, |
| lengthIndicator := 2, |
| instance := '1111'B, |
| spare := '0000'B, |
| causeType := '1010'B, |
| protocolType := '1010'B, |
| causeValue := '01'O, |
| additionalOctets := omit |
| } |
| |
| template RAT_Type t_ratType := { |
| elementIdentifier := '52'O, |
| lengthIndicator := 1, |
| instance := '1111'B, |
| spare := '0000'B, |
| rAT_TypeValue := 5, |
| additionalOctets := omit |
| } |
| |
| template SequenceNumber t_sequenceNumber := { |
| elementIdentifier := 'B7'O, |
| lengthIndicator := 4, |
| instance := '1111'B, |
| spare := '0000'B, |
| sequenceNumber := 4 |
| } |
| |
| template TrustedWLANAccessNetworkIdentifier t_trustedWLANAccessNetworkIdentifier := { |
| elementIdentifier := 'A9'O, |
| lengthIndicator := 3, |
| instance := '0000'B, |
| spare := '0000'B, |
| bssIdIndicator := '0'B, |
| cIVAI := '1'B, |
| pLMNI := '1'B, |
| oPNAI := '1'B, |
| lAAI := '1'B, |
| spare2 := '000'B, |
| lengthOfSSID := 1, |
| SSID := 'AA'O, |
| BSSID := omit, |
| lengthOfCivicAddress := 1, |
| civicAddressInformation := '01'O, |
| tWAN_PLMNID := '01020304'O, |
| lengthOfTWANOperatorName := 1, |
| tWANOperatorName := '01'O, |
| relayIdentityType := 1, |
| lengthOfRelayIdentity := 4, |
| relayIdentity := '01020304'O, |
| lengthOfcircuitID := 1, |
| circuitID := '01'O, |
| additionalOctets := omit |
| } |
| template TrustedWLANModeIndication t_trustedWLANModeIndication := { |
| elementIdentifier := 'AE'O, |
| lengthIndicator := 1, |
| instance := '0000'B, |
| spare := '0000'B, |
| sCM := '0'B, |
| mCM := '1'B, |
| spare2 := '000000'B, |
| additionalOctets := omit |
| } |
| |
| template TWANIdentifierTimestamp t_tWANIdentifierTimestamp := { |
| elementIdentifier := 'B3'O, |
| lengthIndicator := 4, |
| instance := '0000'B, |
| spare := '0000'B, |
| tWANIdentifierTimestampValue := '01020304'O, |
| additionalOctets := omit |
| } |
| |
| template MDT_Configuration t_mDT_Configuration := { |
| elementIdentifier := 'A2'O, |
| lengthIndicator:= 17, |
| instance:= '0000'B, |
| spare:= '0000'B, |
| jobType:= '01'O, |
| listOfmeasurements:= '01020304'O, |
| reportingTrigger:= '01'O, |
| reportInterval:= '02'O, |
| reportAmount:= '03'O, |
| eventThresholdforRSRP:= '04'O, |
| eventThresholdforRSRQ:='05'O , |
| lengthOfAreaScope:= 0, |
| areaScope := omit, |
| cRRMI:= '0'B, |
| mPI:= '1'B, |
| pMI:= '0'B, |
| pLI:= '1'B, |
| spare2:= '0000'B, |
| collectionPeriodforRRMmeasurementsLTE := omit, |
| measurementPeriodLTE := min1, |
| positioningMethod := omit, |
| numberOfMDT_PLMNs := 1, |
| mDT_PLMN_List := {'010203'O}, |
| additionalOctets := omit |
| } |
| template SCEF_PDN_ConnectionGrouped_List t_sCEF_PDN_ConnectionGrouped_List := |
| { |
| { |
| elementIdentifier := 'C3'O, |
| lengthIndicator:= 27, |
| instance:= '0000'B, |
| spare:= '0000'B, |
| sCEF_PDN_ConnectionIEs := |
| { |
| accessPointName := valueof(t_accessPointName), |
| ePS_BearerID := valueof(t_ePS_BearerID), |
| nodeIdentifier := valueof(t_nodeIdentifier) |
| } |
| } |
| } |
| |
| template PDN_ConnectionGrouped_List t_pDN_ConnectionGrouped_List := |
| { |
| { |
| elementIdentifier := '6D'O, |
| lengthIndicator:= 5, |
| instance:= '0000'B, |
| spare:= '0000'B, |
| pDN_Connection_IEs := |
| { |
| accessPointName := omit, |
| iP_Address := omit, |
| linkedEPS_Bearer_ID := omit, |
| fullyQualifiedTEID := omit, |
| fullyQualifiedDomainName := omit, |
| bearerContexts := omit, |
| apn_ambr := omit, |
| chargingCharacteristics := omit, |
| aPN_Restriction := omit, |
| selectionMode := omit, |
| changeReportingAction := omit, |
| cSG_InformationReportingAction := omit, |
| heNBInformationReporting := omit, |
| indicationFlags := omit, |
| signallingPriorityIndication := omit, |
| changeToReportFlags := omit, |
| presenceReportingAreaAction := omit, |
| wLANOffloadabilityIndication := |
| { |
| elementIdentifier := 'B9'O, |
| lengthIndicator := 1, |
| instance := '0000'B, |
| spare := '0000'B, |
| uTRANIndication := '0'B, |
| eUTRANIndication := '0'B, |
| spare2 := '000000'B, |
| additionalOctets := omit |
| }, |
| remoteUEContext := omit, |
| pDN_Type := omit, |
| headerCompressionConfiguration := omit |
| } |
| } |
| } |
| |
| template MillisecondTimeStamp t_millisecondTimeStamp := |
| { |
| elementIdentifier := 'BC'O, |
| lengthIndicator := 6, |
| instance:= '0000'B, |
| spare:= '0000'B, |
| millisecondTimeStampValue := '000000001234'O, |
| additionalOctets := omit |
| } |
| |
| template IntegerNumber t_integerNumber := |
| { |
| elementIdentifier := 'BB'O, |
| lengthIndicator := 2, |
| instance:= '0000'B, |
| spare:= '0000'B, |
| integerNumberValue := {int2 := 5} |
| } |
| |
| template FullyQualifiedContainer t_nBIFOMContainer := |
| { |
| elementIdentifier := '76'O, |
| lengthIndicator := 5, |
| instance:= '0000'B, |
| spare:= '0000'B, |
| containerType := 4, |
| spare2:= '0000'B, |
| f_ContainerField := {nBIFOM_Container := '01020304'O} |
| } |
| |
| template RemoteUEContextGrouped_List t_remoteUEContextGrouped := |
| { |
| { |
| elementIdentifier := 'BF'O, |
| lengthIndicator := 6, |
| instance:= '0000'B, |
| spare:= '0000'B, |
| remoteUEContextIEs := |
| { |
| remoteUserID := omit, |
| remoteUEIPInformation := |
| { |
| elementIdentifier := 'C1'O, |
| lengthIndicator := 2, |
| instance:= '0000'B, |
| spare:= '0000'B, |
| remoteUEIPInformation := 'f001'O |
| } |
| } |
| } |
| } |
| |
| template ExtendedProtocolConfigOptions t_extendedProtocolConfigOptions := |
| { |
| elementIdentifier := 'C5'O, |
| lengthIndicator := 1, |
| instance:= '0000'B, |
| spare:= '0000'B, |
| ePCO := '05'O |
| } |
| |
| template ServingPLMNRateControl t_servingPLMNRateControl := |
| { |
| elementIdentifier := 'C6'O, |
| lengthIndicator := 4, |
| instance:= '0000'B, |
| spare:= '0000'B, |
| uplinkRateLimit := 1000, |
| downlinkRateLimit := 1000, |
| additionalOctets := omit |
| } |
| |
| template PagingAndServiceInformation t_pagingAndServiceInformation := |
| { |
| elementIdentifier := 'BA'O, |
| lengthIndicator := 2, |
| instance:= '0000'B, |
| spare:= '0000'B, |
| ePS_Bearer_ID_Value := 4, |
| spare2 := '0000'B, |
| pPI := '0'B, |
| spare3 := '0000000'B, |
| pagingPolicyIndicationValue := omit, |
| spare4 := omit, |
| additionalOctets := omit |
| } |
| |
| template CIoT_OptimizationsSupportIndication t_cIoT_OptimizationsSupportIndication := |
| { |
| elementIdentifier := 'C2'O, |
| lengthIndicator := 1, |
| instance:= '0000'B, |
| spare:= '0000'B, |
| sGNIPDN := '0'B, |
| sCNIPDN := '0'B, |
| aWOPDN := '0'B, |
| iHCSI := '0'B, |
| spare2 := '0000'B, |
| additionalOctets := omit |
| } |
| |
| template Mapped_UE_UsageType t_mapped_UE_UsageType := |
| { |
| elementIdentifier := 'C8'O, |
| lengthIndicator := 2, |
| instance:= '0000'B, |
| spare := '0000'B, |
| mapped_UE_UsageType := '0102'O, |
| additionalOctets := omit |
| } |
| |
| template Secondary_RAT_UsageDataReport t_secondary_RAT_UsageDataReport := |
| { |
| elementIdentifier := 'C9'O, |
| lengthIndicator := 27, |
| instance := '0000'B, |
| spare := '0000'B, |
| iRPGW := '0'B, |
| iRSGW := '0'B, |
| spare2 := '000000'B, |
| secondaryRATType := 1, |
| eBI := '0000'B, |
| spare3 := '0000'B, |
| startTimestamp := '01020304'O, |
| endTimestamp := '01020305'O, |
| usageDataDL := '0102030405060708'O, |
| usageDataUL := '0102030405060708'O, |
| additionalOctets := omit |
| } |
| |
| template UP_FunctionSelectionIndicationFlags t_uP_FunctionSelectionIndicationFlags := |
| { |
| elementIdentifier := 'CA'O, |
| lengthIndicator := 1, |
| instance:= '0000'B, |
| spare:= '0000'B, |
| dCNR := '0'B, |
| spare2 := '0000000'B, |
| additionalOctets := omit |
| } |
| |
| testcase tc_createSessionRequest() runs on ct_GTPv2{ |
| var GTPCv2_PDUs v_gtpcv2_pdu := { |
| createSessionRequest := { |
| iMSI := omit, |
| mSISDN := omit, |
| mEI := omit, |
| userLocationInfo := omit, |
| servingNetwork := omit, |
| rAT_Type := valueof(t_ratType), |
| indication := omit, |
| fullyQualifiedTEID := {valueof(t_fullyQualifiedTEID)}, |
| accessPointName := valueof(t_accessPointName), |
| selectionMode := omit, |
| pDN_Type := omit, |
| pDN_AddressAllocation := omit, |
| maxAPN_Restriction := omit, |
| ambr := omit, |
| linkedEPS_Bearer_ID := omit, |
| trustedWLANModeIndication := valueof(t_trustedWLANModeIndication), |
| protocolConfigOptions := omit, |
| bearerContextGrouped := {valueof(t_bearerContextGrouped)}, |
| traceInformation := omit, |
| recovery := omit, |
| csid := omit, |
| uE_TimeZone := omit, |
| user_CSG_Information := omit, |
| chargingCharacteristics := omit, |
| lDN := omit, |
| signallingPriorityIndication := omit, |
| iP_Addr := omit, |
| portNumber := omit, |
| aPCO := omit, |
| trustedWLANAccessNetworkIdentifier := {valueof(t_trustedWLANAccessNetworkIdentifier)}, |
| cNOperatorSelectionEntity := valueof(t_cNOperatorSelectionEntity), |
| presenceReportingAreaInformation := {valueof(t_presenceReportingAreaInformation)}, |
| overloadControlInformationGrouped := {valueof(t_overloadControlInformationGrouped), valueof(t_overloadControlInformationGrouped)}, |
| originationTimeStamp := valueof(t_millisecondTimeStamp), |
| maximumWaitTime := valueof(t_integerNumber), |
| wLANLocationTimestamp := valueof(t_tWANIdentifierTimestamp), |
| nBIFOMContainer := valueof(t_nBIFOMContainer), |
| remoteUEContextGrouped := valueof(t_remoteUEContextGrouped), |
| nodeIdentifier := {valueof(t_nodeIdentifier)}, |
| extendedProtocolConfigOptions := valueof(t_extendedProtocolConfigOptions), |
| servingPLMNRateControl := valueof(t_servingPLMNRateControl), |
| counter := omit, |
| mapped_UE_UsageType := valueof(t_mapped_UE_UsageType), |
| fullyQualifiedDomainName := omit, |
| secondary_RAT_UsageDataReport := {valueof(t_secondary_RAT_UsageDataReport)}, |
| uP_FunctionSelectionIndicationFlags := valueof(t_uP_FunctionSelectionIndicationFlags), |
| privateExtension := omit |
| } |
| } |
| var PDU_GTPCv2 v_pdu_gtpcv2 := valueof(t_pdu_gtpcv2('20'O,v_gtpcv2_pdu)); |
| log("Original: ", v_pdu_gtpcv2); |
| var octetstring v_gtp_encoded := enc_PDU_GTPCv2(v_pdu_gtpcv2); |
| log("Encoded value: ", v_gtp_encoded); |
| var PDU_GTPCv2 v_gtp_decoded := dec_PDU_GTPCv2(v_gtp_encoded); |
| log("Decoded: ", v_gtp_decoded); |
| if(not match(v_gtp_decoded,t_m_pdu_gtpcv2('20'O,v_gtpcv2_pdu))) { |
| setverdict(fail); |
| } |
| setverdict(pass); |
| } |
| |
| testcase tc_createSessionResponse() runs on ct_GTPv2{ |
| var GTPCv2_PDUs v_gtpcv2_pdu := { |
| createSessionResponse := { |
| cause := valueof(t_cause), |
| changeReportingAction := omit, |
| cSG_InformationReportingAction := omit, |
| heNBInformationReporting := omit, |
| fullyQualifiedTEID := omit, |
| pDN_AddressAllocation := omit, |
| aPN_Restriction := omit, |
| ambr := omit, |
| linkedEPS_Bearer_ID := omit, |
| protocolConfigOptions := omit, |
| bearerContextGrouped := omit, |
| recovery := omit, |
| chargingGatewayName := omit, |
| chargingGatewayAddress := omit, |
| csid := omit, |
| lDN := omit, |
| pGW_Back_OffTime := omit, |
| aPCO := omit, |
| trustedWLANIPv4Parameters := valueof(t_IPv4ConfigurationPrameters), |
| indicationFlags := valueof(t_indicationFlags), |
| presenceReportingAreaAction := {valueof(t_presenceReportingAreaAction)}, |
| loadControlInformationGrouped := {valueof(t_loadControlInformationGrouped), valueof(t_loadControlInformationGrouped), valueof(t_loadControlInformationGrouped)}, |
| overloadControlInformationGrouped := {valueof(t_overloadControlInformationGrouped), valueof(t_overloadControlInformationGrouped)}, |
| nBIFOMContainer := valueof(t_nBIFOMContainer), |
| pDNConnectionChargingID := omit, |
| extendedProtocolConfigOptions := valueof(t_extendedProtocolConfigOptions), |
| privateExtension := omit |
| } |
| } |
| var PDU_GTPCv2 v_pdu_gtpcv2 := valueof(t_pdu_gtpcv2('21'O,v_gtpcv2_pdu)); |
| log("Original: ", v_pdu_gtpcv2); |
| var octetstring v_gtp_encoded := enc_PDU_GTPCv2(v_pdu_gtpcv2); |
| log("Encoded value: ", v_gtp_encoded); |
| var PDU_GTPCv2 v_gtp_decoded := dec_PDU_GTPCv2(v_gtp_encoded); |
| log("Decoded: ", v_gtp_decoded); |
| if(not match(v_gtp_decoded,t_m_pdu_gtpcv2('21'O,v_gtpcv2_pdu))) { |
| setverdict(fail); |
| } |
| |
| v_gtpcv2_pdu.createSessionResponse.indicationFlags := valueof(t_indicationFlags2); |
| v_pdu_gtpcv2 := valueof(t_pdu_gtpcv2('21'O,v_gtpcv2_pdu)); |
| log("Original: ", v_pdu_gtpcv2); |
| v_gtp_encoded := enc_PDU_GTPCv2(v_pdu_gtpcv2); |
| log("Encoded value: ", v_gtp_encoded); |
| v_gtp_decoded := dec_PDU_GTPCv2(v_gtp_encoded); |
| log("Decoded: ", v_gtp_decoded); |
| if(not match(v_gtp_decoded,t_m_pdu_gtpcv2('21'O,v_gtpcv2_pdu))) { |
| setverdict(fail); |
| } |
| |
| setverdict(pass); |
| } |
| |
| testcase tc_createBearerRequest() runs on ct_GTPv2{ |
| var GTPCv2_PDUs v_gtpcv2_pdu := { |
| createBearerRequest := { |
| procedureTransactionID := omit, |
| linkedEPS_BearerID := valueof(t_ePS_BearerID), |
| protocolConfigOptions := omit, |
| bearerContextGrouped := {valueof(t_bearerContextGrouped)}, |
| csid := omit, |
| changeReportingAction := omit, |
| cSG_InformationReportingAction := omit, |
| heNBInformationReporting := omit, |
| presenceReportingAreaAction := {valueof(t_presenceReportingAreaAction)}, |
| indicationFlags := valueof(t_indicationFlags), |
| loadControlInformationGrouped := {valueof(t_loadControlInformationGrouped), valueof(t_loadControlInformationGrouped), valueof(t_loadControlInformationGrouped)}, |
| overloadControlInformationGrouped := {valueof(t_overloadControlInformationGrouped), valueof(t_overloadControlInformationGrouped)}, |
| nBIFOMContainer := valueof(t_nBIFOMContainer), |
| privateExtension := omit |
| } |
| } |
| var PDU_GTPCv2 v_pdu_gtpcv2 := valueof(t_pdu_gtpcv2('5F'O,v_gtpcv2_pdu)); |
| log("Original: ", v_pdu_gtpcv2); |
| var octetstring v_gtp_encoded := enc_PDU_GTPCv2(v_pdu_gtpcv2); |
| log("Encoded value: ", v_gtp_encoded); |
| var PDU_GTPCv2 v_gtp_decoded := dec_PDU_GTPCv2(v_gtp_encoded); |
| log("Decoded: ", v_gtp_decoded); |
| if(not match(v_gtp_decoded,t_m_pdu_gtpcv2('5F'O,v_gtpcv2_pdu))) { |
| setverdict(fail); |
| } |
| setverdict(pass); |
| } |
| |
| testcase tc_createBearerResponse() runs on ct_GTPv2{ |
| var GTPCv2_PDUs v_gtpcv2_pdu := { |
| createBearerResponse := { |
| cause := valueof(t_cause), |
| bearerContextGrouped := omit, |
| recovery := omit, |
| csid := omit, |
| protocolConfigOptions := omit, |
| uE_TimeZone := omit, |
| uLI := omit, |
| trustedWLANAccessNetworkIdentifier:= {valueof(t_trustedWLANAccessNetworkIdentifier)}, |
| overloadControlInformationGrouped := {valueof(t_overloadControlInformationGrouped), valueof(t_overloadControlInformationGrouped)}, |
| presenceReportingAreaInformation := {valueof(t_presenceReportingAreaInformation)}, |
| iP_Addr := {valueof(t_IP_Address)}, |
| wLANLocationTimestamp := omit, |
| portNumber := omit, |
| nBIFOMContainer := valueof(t_nBIFOMContainer), |
| extendedProtocolConfigOptions := omit, |
| privateExtension := omit |
| } |
| } |
| var PDU_GTPCv2 v_pdu_gtpcv2 := valueof(t_pdu_gtpcv2('60'O,v_gtpcv2_pdu)); |
| log("Original: ", v_pdu_gtpcv2); |
| var octetstring v_gtp_encoded := enc_PDU_GTPCv2(v_pdu_gtpcv2); |
| log("Encoded value: ", v_gtp_encoded); |
| var PDU_GTPCv2 v_gtp_decoded := dec_PDU_GTPCv2(v_gtp_encoded); |
| log("Decoded: ", v_gtp_decoded); |
| if(not match(v_gtp_decoded,t_m_pdu_gtpcv2('60'O,v_gtpcv2_pdu))) { |
| setverdict(fail); |
| } |
| setverdict(pass); |
| } |
| |
| testcase tc_bearerResourceCommand() runs on ct_GTPv2{ |
| var GTPCv2_PDUs v_gtpcv2_pdu := { |
| bearerResourceCommand := { |
| epsBearerIdentity := {valueof(t_ePS_BearerID)}, |
| procedureTransactionID := valueof(t_procedureTransactionID), |
| flowQoS := omit, |
| tAD := omit, |
| rAT_Type := omit, |
| servingNetwork := omit, |
| userLocationInfo := omit, |
| indicationFlags := omit, |
| fullyQualifiedTEID := omit, |
| protocolConfigOptions := omit, |
| signallingPriorityIndication := omit, |
| overloadControlInformationGrouped := {valueof(t_overloadControlInformationGrouped), valueof(t_overloadControlInformationGrouped)}, |
| nBIFOMContainer := omit, |
| extendedProtocolConfigOptions := omit, |
| privateExtension := omit |
| } |
| } |
| var PDU_GTPCv2 v_pdu_gtpcv2 := valueof(t_pdu_gtpcv2('44'O,v_gtpcv2_pdu)); |
| log("Original: ", v_pdu_gtpcv2); |
| var octetstring v_gtp_encoded := enc_PDU_GTPCv2(v_pdu_gtpcv2); |
| log("Encoded value: ", v_gtp_encoded); |
| var PDU_GTPCv2 v_gtp_decoded := dec_PDU_GTPCv2(v_gtp_encoded); |
| log("Decoded: ", v_gtp_decoded); |
| if(not match(v_gtp_decoded,t_m_pdu_gtpcv2('44'O,v_gtpcv2_pdu))) { |
| setverdict(fail); |
| } |
| setverdict(pass); |
| } |
| |
| testcase tc_bearerResourceFailureIndication() runs on ct_GTPv2{ |
| var GTPCv2_PDUs v_gtpcv2_pdu := { |
| bearerResourceFailureIndication := { |
| cause := valueof(t_cause), |
| linkedBearerIdentity := valueof(t_ePS_BearerID), |
| procedureTransactionID := valueof(t_procedureTransactionID), |
| indicationFlags := valueof(t_indicationFlags), |
| overloadControlInformationGrouped := {valueof(t_overloadControlInformationGrouped), valueof(t_overloadControlInformationGrouped)}, |
| recovery := omit, |
| nBIFOMContainer := omit, |
| privateExtension := omit |
| } |
| } |
| var PDU_GTPCv2 v_pdu_gtpcv2 := valueof(t_pdu_gtpcv2('45'O,v_gtpcv2_pdu)); |
| log("Original: ", v_pdu_gtpcv2); |
| var octetstring v_gtp_encoded := enc_PDU_GTPCv2(v_pdu_gtpcv2); |
| log("Encoded value: ", v_gtp_encoded); |
| var PDU_GTPCv2 v_gtp_decoded := dec_PDU_GTPCv2(v_gtp_encoded); |
| log("Decoded: ", v_gtp_decoded); |
| if(not match(v_gtp_decoded,t_m_pdu_gtpcv2('45'O,v_gtpcv2_pdu))) { |
| setverdict(fail); |
| } |
| setverdict(pass); |
| } |
| |
| testcase tc_modifyBearerRequest() runs on ct_GTPv2{ |
| var GTPCv2_PDUs v_gtpcv2_pdu := { |
| modifyBearerRequest := { |
| mEI := omit, |
| userLocationInfo := omit, |
| servingNetwork := omit, |
| rAT_Type := omit, |
| indicationFlags := omit, |
| fullyQualifiedTEID := omit, |
| ambr := omit, |
| delayDownlinkPacketNotificationReq := omit, |
| bearerContextGrouped := omit, |
| recovery := omit, |
| uE_TimeZone := omit, |
| csid := omit, |
| user_CSG_Information := omit, |
| iP_Addr := omit, |
| portNumber := omit, |
| lDN := omit, |
| cNOperatorSelectionEntity:= valueof(t_cNOperatorSelectionEntity), |
| presenceReportingAreaInformation := {valueof(t_presenceReportingAreaInformation)}, |
| overloadControlInformationGrouped := {valueof(t_overloadControlInformationGrouped), valueof(t_overloadControlInformationGrouped)}, |
| servingPLMNRateControl := omit, |
| counter := omit, |
| iMSI := omit, |
| trustedWLANAccessNetworkIdentifier := omit, |
| tWANIdentifierTimestamp := omit, |
| secondary_RAT_UsageDataReport := omit, |
| privateExtension := omit |
| } |
| } |
| var PDU_GTPCv2 v_pdu_gtpcv2 := valueof(t_pdu_gtpcv2('22'O,v_gtpcv2_pdu)); |
| log("Original: ", v_pdu_gtpcv2); |
| var octetstring v_gtp_encoded := enc_PDU_GTPCv2(v_pdu_gtpcv2); |
| log("Encoded value: ", v_gtp_encoded); |
| var PDU_GTPCv2 v_gtp_decoded := dec_PDU_GTPCv2(v_gtp_encoded); |
| log("Decoded: ", v_gtp_decoded); |
| if(not match(v_gtp_decoded,t_m_pdu_gtpcv2('22'O,v_gtpcv2_pdu))) { |
| setverdict(fail); |
| } |
| setverdict(pass); |
| } |
| |
| testcase tc_modifyBearerResponse() runs on ct_GTPv2{ |
| var GTPCv2_PDUs v_gtpcv2_pdu := { |
| modifyBearerResponse := { |
| cause := valueof(t_cause), |
| mSISDN := omit, |
| linkedEPS_Bearer_ID := omit, |
| aPN_Restriction := omit, |
| protocolConfigOptions := omit, |
| bearerContextGrouped := omit, |
| changeReportingAction := omit, |
| cSG_InformationReportingAction := omit, |
| heNBInformationReporting := omit, |
| chargingGatewayName := omit, |
| chargingGatewayAddress := omit, |
| csid := omit, |
| recovery := omit, |
| lDN := omit, |
| indicationFlags := omit, |
| presenceReportingAreaAction := {valueof(t_presenceReportingAreaAction)}, |
| loadControlInformationGrouped := {valueof(t_loadControlInformationGrouped), valueof(t_loadControlInformationGrouped), valueof(t_loadControlInformationGrouped)}, |
| overloadControlInformationGrouped := {valueof(t_overloadControlInformationGrouped), valueof(t_overloadControlInformationGrouped)}, |
| pDNConnectionChargingID := omit, |
| privateExtension := omit |
| } |
| } |
| var PDU_GTPCv2 v_pdu_gtpcv2 := valueof(t_pdu_gtpcv2('23'O,v_gtpcv2_pdu)); |
| log("Original: ", v_pdu_gtpcv2); |
| var octetstring v_gtp_encoded := enc_PDU_GTPCv2(v_pdu_gtpcv2); |
| log("Encoded value: ", v_gtp_encoded); |
| var PDU_GTPCv2 v_gtp_decoded := dec_PDU_GTPCv2(v_gtp_encoded); |
| log("Decoded: ", v_gtp_decoded); |
| if(not match(v_gtp_decoded,t_m_pdu_gtpcv2('23'O,v_gtpcv2_pdu))) { |
| setverdict(fail); |
| } |
| setverdict(pass); |
| } |
| |
| testcase tc_deleteSessionRequest() runs on ct_GTPv2{ |
| var GTPCv2_PDUs v_gtpcv2_pdu := { |
| deleteSessionRequest := { |
| cause := omit, |
| linkedEPS_Bearer_ID := omit, |
| uLI := omit, |
| indicationFlags := omit, |
| protocolConfigOptions := omit, |
| originatingNode := omit, |
| fullyQualifiedTEID := omit, |
| uE_TimeZone := omit, |
| uLITimestamp := omit, |
| rANNASReleaseCause := valueof(t_rAN_NASCause), |
| trustedWLANAccessNetworkIdentifier:= {valueof(t_trustedWLANAccessNetworkIdentifier)}, |
| tWANIdentifierTimestamp := {valueof(t_tWANIdentifierTimestamp)}, |
| overloadControlInformationGrouped := {valueof(t_overloadControlInformationGrouped), valueof(t_overloadControlInformationGrouped)}, |
| uELocalIP_Addr := omit, |
| portNumber := omit, |
| extendedProtocolConfigOptions := omit, |
| secondary_RAT_UsageDataReport := omit, |
| privateExtension := omit |
| } |
| } |
| var PDU_GTPCv2 v_pdu_gtpcv2 := valueof(t_pdu_gtpcv2('24'O,v_gtpcv2_pdu)); |
| log("Original: ", v_pdu_gtpcv2); |
| var octetstring v_gtp_encoded := enc_PDU_GTPCv2(v_pdu_gtpcv2); |
| log("Encoded value: ", v_gtp_encoded); |
| var PDU_GTPCv2 v_gtp_decoded := dec_PDU_GTPCv2(v_gtp_encoded); |
| log("Decoded: ", v_gtp_decoded); |
| if(not match(v_gtp_decoded,t_m_pdu_gtpcv2('24'O,v_gtpcv2_pdu))) { |
| setverdict(fail); |
| } |
| setverdict(pass); |
| } |
| |
| testcase tc_deleteBearerRequest() runs on ct_GTPv2{ |
| var GTPCv2_PDUs v_gtpcv2_pdu := { |
| deleteBearerRequest := { |
| epsBearerIdentity := omit, |
| bearerContextGrouped := omit, |
| procedureTransactionID := omit, |
| protocolConfigOptions := omit, |
| csid := omit, |
| cause := omit, |
| indicationFlags := valueof(t_indicationFlags), |
| loadControlInformationGrouped := {valueof(t_loadControlInformationGrouped), valueof(t_loadControlInformationGrouped), valueof(t_loadControlInformationGrouped)}, |
| overloadControlInformationGrouped := {valueof(t_overloadControlInformationGrouped),valueof(t_overloadControlInformationGrouped)}, |
| nBIFOMContainer := valueof(t_nBIFOMContainer), |
| extendedProtocolConfigOptions := valueof(t_extendedProtocolConfigOptions), |
| privateExtension := omit |
| } |
| } |
| var PDU_GTPCv2 v_pdu_gtpcv2 := valueof(t_pdu_gtpcv2('63'O,v_gtpcv2_pdu)); |
| log("Original: ", v_pdu_gtpcv2); |
| var octetstring v_gtp_encoded := enc_PDU_GTPCv2(v_pdu_gtpcv2); |
| log("Encoded value: ", v_gtp_encoded); |
| var PDU_GTPCv2 v_gtp_decoded := dec_PDU_GTPCv2(v_gtp_encoded); |
| log("Decoded: ", v_gtp_decoded); |
| if(not match(v_gtp_decoded,t_m_pdu_gtpcv2('63'O,v_gtpcv2_pdu))) { |
| setverdict(fail); |
| } |
| setverdict(pass); |
| } |
| |
| testcase tc_deleteSessionResponse() runs on ct_GTPv2{ |
| var GTPCv2_PDUs v_gtpcv2_pdu := { |
| deleteSessionResponse := { |
| cause := valueof(t_cause), |
| recovery := omit, |
| protocolConfigOptions := omit, |
| indicationFlags := valueof(t_indicationFlags), |
| loadControlInformationGrouped := {valueof(t_loadControlInformationGrouped), valueof(t_loadControlInformationGrouped), valueof(t_loadControlInformationGrouped)}, |
| overloadControlInformationGrouped := {valueof(t_overloadControlInformationGrouped), valueof(t_overloadControlInformationGrouped)}, |
| extendedProtocolConfigOptions := valueof(t_extendedProtocolConfigOptions), |
| privateExtension := omit |
| } |
| } |
| var PDU_GTPCv2 v_pdu_gtpcv2 := valueof(t_pdu_gtpcv2('25'O,v_gtpcv2_pdu)); |
| log("Original: ", v_pdu_gtpcv2); |
| var octetstring v_gtp_encoded := enc_PDU_GTPCv2(v_pdu_gtpcv2); |
| log("Encoded value: ", v_gtp_encoded); |
| var PDU_GTPCv2 v_gtp_decoded := dec_PDU_GTPCv2(v_gtp_encoded); |
| log("Decoded: ", v_gtp_decoded); |
| if(not match(v_gtp_decoded,t_m_pdu_gtpcv2('25'O,v_gtpcv2_pdu))) { |
| setverdict(fail); |
| } |
| setverdict(pass); |
| } |
| |
| testcase tc_deleteBearerResponse() runs on ct_GTPv2{ |
| var GTPCv2_PDUs v_gtpcv2_pdu := { |
| deleteBearerResponse := { |
| cause := valueof(t_cause), |
| linkedBearerIdentity := omit, |
| bearerContextGrouped := omit, |
| recovery := omit, |
| csid := omit, |
| protocolConfigOptions := omit, |
| uE_TimeZone := omit, |
| uLI := omit, |
| uLITimestamp := omit, |
| trustedWLANAccessNetworkIdentifier := valueof(t_trustedWLANAccessNetworkIdentifier), |
| tWANIdentifierTimestamp := valueof(t_tWANIdentifierTimestamp), |
| overloadControlInformationGrouped := {valueof(t_overloadControlInformationGrouped), valueof(t_overloadControlInformationGrouped)}, |
| iP_Addr := {valueof(t_IP_Address)}, |
| portNumber := omit, |
| nBIFOMContainer:= valueof(t_nBIFOMContainer), |
| secondary_RAT_UsageDataReport := omit, |
| privateExtension := omit |
| } |
| } |
| var PDU_GTPCv2 v_pdu_gtpcv2 := valueof(t_pdu_gtpcv2('64'O,v_gtpcv2_pdu)); |
| log("Original: ", v_pdu_gtpcv2); |
| var octetstring v_gtp_encoded := enc_PDU_GTPCv2(v_pdu_gtpcv2); |
| log("Encoded value: ", v_gtp_encoded); |
| var PDU_GTPCv2 v_gtp_decoded := dec_PDU_GTPCv2(v_gtp_encoded); |
| log("Decoded: ", v_gtp_decoded); |
| if(not match(v_gtp_decoded,t_m_pdu_gtpcv2('64'O,v_gtpcv2_pdu))) { |
| setverdict(fail); |
| } |
| setverdict(pass); |
| } |
| |
| testcase tc_downlinkDataNotification() runs on ct_GTPv2{ |
| var GTPCv2_PDUs v_gtpcv2_pdu := { |
| downlinkDataNotification := { |
| cause := omit, |
| epsBearerIdentity := omit, |
| aRP := omit, |
| iMSI := omit, |
| fullyQualifiedTEID := omit, |
| indicationFlags := valueof(t_indicationFlags), |
| loadControlInformationGrouped := valueof(t_loadControlInformationGrouped), |
| overloadControlInformationGrouped := valueof(t_overloadControlInformationGrouped), |
| pagingAndServiceInformation := valueof(t_pagingAndServiceInformation), |
| privateExtension := omit |
| } |
| } |
| var PDU_GTPCv2 v_pdu_gtpcv2 := valueof(t_pdu_gtpcv2('B0'O,v_gtpcv2_pdu)); |
| log("Original: ", v_pdu_gtpcv2); |
| var octetstring v_gtp_encoded := enc_PDU_GTPCv2(v_pdu_gtpcv2); |
| log("Encoded value: ", v_gtp_encoded); |
| var PDU_GTPCv2 v_gtp_decoded := dec_PDU_GTPCv2(v_gtp_encoded); |
| log("Decoded: ", v_gtp_decoded); |
| if(not match(v_gtp_decoded,t_m_pdu_gtpcv2('B0'O,v_gtpcv2_pdu))) { |
| setverdict(fail); |
| } |
| setverdict(pass); |
| } |
| |
| testcase tc_modifyBearerCommand() runs on ct_GTPv2{ |
| var GTPCv2_PDUs v_gtpcv2_pdu := { |
| modifyBearerCommand := { |
| ambr := valueof(t_ambr), |
| bearerContextGrouped := valueof(t_bearerContextGrouped), |
| overloadControlInformationGrouped := { valueof(t_overloadControlInformationGrouped), valueof(t_overloadControlInformationGrouped)}, |
| fullyQualifiedTEID := omit, |
| privateExtension := omit |
| } |
| } |
| var PDU_GTPCv2 v_pdu_gtpcv2 := valueof(t_pdu_gtpcv2('40'O,v_gtpcv2_pdu)); |
| log("Original: ", v_pdu_gtpcv2); |
| var octetstring v_gtp_encoded := enc_PDU_GTPCv2(v_pdu_gtpcv2); |
| log("Encoded value: ", v_gtp_encoded); |
| var PDU_GTPCv2 v_gtp_decoded := dec_PDU_GTPCv2(v_gtp_encoded); |
| log("Decoded: ", v_gtp_decoded); |
| if(not match(v_gtp_decoded,t_m_pdu_gtpcv2('40'O,v_gtpcv2_pdu))) { |
| setverdict(fail); |
| } |
| setverdict(pass); |
| } |
| |
| testcase tc_modifyBearerFailureIndication() runs on ct_GTPv2{ |
| var GTPCv2_PDUs v_gtpcv2_pdu := { |
| modifyBearerFailureIndication := { |
| cause := valueof(t_cause), |
| recovery := omit, |
| indicationFlags := valueof(t_indicationFlags), |
| overloadControlInformationGrouped := { valueof(t_overloadControlInformationGrouped), valueof(t_overloadControlInformationGrouped)}, |
| privateExtension := omit |
| } |
| } |
| var PDU_GTPCv2 v_pdu_gtpcv2 := valueof(t_pdu_gtpcv2('41'O,v_gtpcv2_pdu)); |
| log("Original: ", v_pdu_gtpcv2); |
| var octetstring v_gtp_encoded := enc_PDU_GTPCv2(v_pdu_gtpcv2); |
| log("Encoded value: ", v_gtp_encoded); |
| var PDU_GTPCv2 v_gtp_decoded := dec_PDU_GTPCv2(v_gtp_encoded); |
| log("Decoded: ", v_gtp_decoded); |
| if(not match(v_gtp_decoded,t_m_pdu_gtpcv2('41'O,v_gtpcv2_pdu))) { |
| setverdict(fail); |
| } |
| setverdict(pass); |
| } |
| |
| testcase tc_deleteBearerFailureIndication2() runs on ct_GTPv2{ |
| var GTPCv2_PDUs v_gtpcv2_pdu := { |
| deleteBearerFailureIndication := { |
| cause := valueof(t_cause), |
| bearerContextGrouped := {valueof(t_m_bearerContextGrouped)}, |
| recovery := omit, |
| indicationFlags := valueof(t_indicationFlags), |
| overloadControlInformationGrouped := { valueof(t_overloadControlInformationGrouped), valueof(t_overloadControlInformationGrouped)}, |
| privateExtension := omit |
| } |
| } |
| var PDU_GTPCv2 v_pdu_gtpcv2 := valueof(t_pdu_gtpcv2('43'O,v_gtpcv2_pdu)); |
| log("Original: ", v_pdu_gtpcv2); |
| var octetstring v_gtp_encoded := enc_PDU_GTPCv2(v_pdu_gtpcv2); |
| log("Encoded value: ", v_gtp_encoded); |
| var PDU_GTPCv2 v_gtp_decoded := dec_PDU_GTPCv2(v_gtp_encoded); |
| log("Decoded: ", v_gtp_decoded); |
| if(not match(v_gtp_decoded,t_m_pdu_gtpcv2('43'O,v_gtpcv2_pdu))) { |
| setverdict(fail); |
| } |
| setverdict(pass); |
| } |
| |
| testcase tc_updateBearerRequest() runs on ct_GTPv2{ |
| var GTPCv2_PDUs v_gtpcv2_pdu := { |
| updateBearerRequest := { |
| bearerContextGrouped := {valueof(t_bearerContextGrouped)}, |
| procedureTransactionID := omit, |
| protocolConfigOptions := omit, |
| apn_ambr := valueof(t_ambr), |
| changeReportingAction := omit, |
| cSG_InformationReportingAction := omit, |
| indicationFlags := omit, |
| heNBInformationReporting := omit, |
| csid := omit, |
| presenceReportingAreaAction := {valueof(t_presenceReportingAreaAction)}, |
| loadControlInformationGrouped := { valueof(t_loadControlInformationGrouped), valueof(t_loadControlInformationGrouped),valueof(t_loadControlInformationGrouped)}, |
| overloadControlInformationGrouped := { valueof(t_overloadControlInformationGrouped), valueof(t_overloadControlInformationGrouped)}, |
| nBIFOMContainer:= valueof(t_nBIFOMContainer), |
| privateExtension := omit |
| } |
| } |
| var PDU_GTPCv2 v_pdu_gtpcv2 := valueof(t_pdu_gtpcv2('61'O,v_gtpcv2_pdu)); |
| log("Original: ", v_pdu_gtpcv2); |
| var octetstring v_gtp_encoded := enc_PDU_GTPCv2(v_pdu_gtpcv2); |
| log("Encoded value: ", v_gtp_encoded); |
| var PDU_GTPCv2 v_gtp_decoded := dec_PDU_GTPCv2(v_gtp_encoded); |
| log("Decoded: ", v_gtp_decoded); |
| if(not match(v_gtp_decoded,t_m_pdu_gtpcv2('61'O,v_gtpcv2_pdu))) { |
| setverdict(fail); |
| } |
| setverdict(pass); |
| } |
| |
| testcase tc_updateBearerResponse() runs on ct_GTPv2{ |
| var GTPCv2_PDUs v_gtpcv2_pdu := { |
| updateBearerResponse := { |
| cause := valueof(t_cause), |
| bearerContextGrouped := {valueof(t_bearerContextGrouped)}, |
| protocolConfigOptions := omit, |
| recovery := omit, |
| csid := omit, |
| indicationFlags := omit, |
| uE_TimeZone := omit, |
| uLI := omit, |
| trustedWLANAccessNetworkIdentifier := valueof(t_trustedWLANAccessNetworkIdentifier), |
| overloadControlInformationGrouped := { valueof(t_overloadControlInformationGrouped), valueof(t_overloadControlInformationGrouped)}, |
| presenceReportingAreaInformation := {valueof(t_presenceReportingAreaInformation)}, |
| iP_Addr := {valueof(t_IP_Address)}, |
| tWANIdentifierTimestamp := valueof(t_tWANIdentifierTimestamp), |
| portNumber := omit, |
| nBIFOMContainer := valueof(t_nBIFOMContainer), |
| extendedProtocolConfigOptions := valueof(t_extendedProtocolConfigOptions), |
| privateExtension := omit |
| } |
| } |
| var PDU_GTPCv2 v_pdu_gtpcv2 := valueof(t_pdu_gtpcv2('62'O,v_gtpcv2_pdu)); |
| log("Original: ", v_pdu_gtpcv2); |
| var octetstring v_gtp_encoded := enc_PDU_GTPCv2(v_pdu_gtpcv2); |
| log("Encoded value: ", v_gtp_encoded); |
| var PDU_GTPCv2 v_gtp_decoded := dec_PDU_GTPCv2(v_gtp_encoded); |
| log("Decoded: ", v_gtp_decoded); |
| if(not match(v_gtp_decoded,t_m_pdu_gtpcv2('62'O,v_gtpcv2_pdu))) { |
| setverdict(fail); |
| } |
| setverdict(pass); |
| } |
| |
| testcase tc_deleteBearerCommand() runs on ct_GTPv2{ |
| var GTPCv2_PDUs v_gtpcv2_pdu := { |
| deleteBearerCommand := { |
| bearerContextGrouped := {valueof(t_bearerContextGrouped)}, |
| uli := omit, |
| uli_timestamp := omit, |
| ue_timezone := omit, |
| overloadControlInformationGrouped := { valueof(t_overloadControlInformationGrouped), valueof(t_overloadControlInformationGrouped)}, |
| fullyQualifiedTEID := omit, |
| secondary_RAT_UsageDataReport := omit, |
| privateExtension := omit |
| } |
| } |
| var PDU_GTPCv2 v_pdu_gtpcv2 := valueof(t_pdu_gtpcv2('42'O,v_gtpcv2_pdu)); |
| log("Original: ", v_pdu_gtpcv2); |
| var octetstring v_gtp_encoded := enc_PDU_GTPCv2(v_pdu_gtpcv2); |
| log("Encoded value: ", v_gtp_encoded); |
| var PDU_GTPCv2 v_gtp_decoded := dec_PDU_GTPCv2(v_gtp_encoded); |
| log("Decoded: ", v_gtp_decoded); |
| if(not match(v_gtp_decoded,t_m_pdu_gtpcv2('42'O,v_gtpcv2_pdu))) { |
| setverdict(fail); |
| } |
| setverdict(pass); |
| } |
| |
| testcase tc_deleteBearerFailureIndication() runs on ct_GTPv2{ |
| var GTPCv2_PDUs v_gtpcv2_pdu := { |
| deleteBearerFailureIndication := { |
| cause := valueof(t_cause), |
| bearerContextGrouped := {valueof(t_bearerContextGrouped)}, |
| recovery := omit, |
| indicationFlags := valueof(t_indicationFlags), |
| overloadControlInformationGrouped := { valueof(t_overloadControlInformationGrouped), valueof(t_overloadControlInformationGrouped)}, |
| privateExtension := omit |
| } |
| } |
| var PDU_GTPCv2 v_pdu_gtpcv2 := valueof(t_pdu_gtpcv2('43'O,v_gtpcv2_pdu)); |
| log("Original: ", v_pdu_gtpcv2); |
| var octetstring v_gtp_encoded := enc_PDU_GTPCv2(v_pdu_gtpcv2); |
| log("Encoded value: ", v_gtp_encoded); |
| var PDU_GTPCv2 v_gtp_decoded := dec_PDU_GTPCv2(v_gtp_encoded); |
| log("Decoded: ", v_gtp_decoded); |
| if(not match(v_gtp_decoded,t_m_pdu_gtpcv2('43'O,v_gtpcv2_pdu))) { |
| setverdict(fail); |
| } |
| setverdict(pass); |
| } |
| |
| testcase tc_releaseAccessBearersRequest() runs on ct_GTPv2{ |
| var GTPCv2_PDUs v_gtpcv2_pdu := { |
| releaseAccessBearersRequest := { |
| listOfRABs := omit, |
| originatingNode := omit, |
| indicationFlags := valueof(t_indicationFlags), |
| secondary_RAT_UsageDataReport := omit, |
| privateExtension := omit |
| } |
| } |
| var PDU_GTPCv2 v_pdu_gtpcv2 := valueof(t_pdu_gtpcv2('AA'O,v_gtpcv2_pdu)); |
| log("Original: ", v_pdu_gtpcv2); |
| var octetstring v_gtp_encoded := enc_PDU_GTPCv2(v_pdu_gtpcv2); |
| log("Encoded value: ", v_gtp_encoded); |
| var PDU_GTPCv2 v_gtp_decoded := dec_PDU_GTPCv2(v_gtp_encoded); |
| log("Decoded: ", v_gtp_decoded); |
| if(not match(v_gtp_decoded,t_m_pdu_gtpcv2('AA'O,v_gtpcv2_pdu))) { |
| setverdict(fail); |
| } |
| setverdict(pass); |
| } |
| |
| testcase tc_releaseAccessBearersResponse() runs on ct_GTPv2{ |
| var GTPCv2_PDUs v_gtpcv2_pdu := { |
| releaseAccessBearersResponse := { |
| cause := valueof(t_cause), |
| recovery := omit, |
| indicationFlags := valueof(t_indicationFlags), |
| loadControlInformationGrouped := valueof(t_loadControlInformationGrouped), |
| overloadControlInformationGrouped := valueof(t_overloadControlInformationGrouped), |
| privateExtension := omit |
| } |
| } |
| var PDU_GTPCv2 v_pdu_gtpcv2 := valueof(t_pdu_gtpcv2('AB'O,v_gtpcv2_pdu)); |
| log("Original: ", v_pdu_gtpcv2); |
| var octetstring v_gtp_encoded := enc_PDU_GTPCv2(v_pdu_gtpcv2); |
| log("Encoded value: ", v_gtp_encoded); |
| var PDU_GTPCv2 v_gtp_decoded := dec_PDU_GTPCv2(v_gtp_encoded); |
| log("Decoded: ", v_gtp_decoded); |
| if(not match(v_gtp_decoded,t_m_pdu_gtpcv2('AB'O,v_gtpcv2_pdu))) { |
| setverdict(fail); |
| } |
| setverdict(pass); |
| } |
| |
| testcase tc_stopPagingIndication() runs on ct_GTPv2{ |
| var GTPCv2_PDUs v_gtpcv2_pdu := { |
| stopPagingIndication := { |
| iMSI := valueof(t_iMSI), |
| privateExtension := omit |
| } |
| } |
| var PDU_GTPCv2 v_pdu_gtpcv2 := valueof(t_pdu_gtpcv2('49'O,v_gtpcv2_pdu)); |
| log("Original: ", v_pdu_gtpcv2); |
| var octetstring v_gtp_encoded := enc_PDU_GTPCv2(v_pdu_gtpcv2); |
| log("Encoded value: ", v_gtp_encoded); |
| var PDU_GTPCv2 v_gtp_decoded := dec_PDU_GTPCv2(v_gtp_encoded); |
| log("Decoded: ", v_gtp_decoded); |
| if(not match(v_gtp_decoded,t_m_pdu_gtpcv2('49'O,v_gtpcv2_pdu))) { |
| setverdict(fail); |
| } |
| setverdict(pass); |
| } |
| |
| testcase tc_modifyAccessBearersResponse() runs on ct_GTPv2{ |
| var GTPCv2_PDUs v_gtpcv2_pdu := { |
| modifyAccessBearersResponse := { |
| cause := valueof(t_cause), |
| bearerContextGrouped := omit, |
| recovery := omit, |
| indicationFlags := valueof(t_indicationFlags), |
| loadControlInformationGrouped := valueof(t_loadControlInformationGrouped), |
| overloadControlInformationGrouped := valueof(t_overloadControlInformationGrouped), |
| privateExtension := omit |
| } |
| } |
| |
| var PDU_GTPCv2 v_pdu_gtpcv2 := valueof(t_pdu_gtpcv2('D4'O,v_gtpcv2_pdu)); |
| log("Original: ", v_pdu_gtpcv2); |
| var octetstring v_gtp_encoded := enc_PDU_GTPCv2(v_pdu_gtpcv2); |
| log("Encoded value: ", v_gtp_encoded); |
| var PDU_GTPCv2 v_gtp_decoded := dec_PDU_GTPCv2(v_gtp_encoded); |
| log("Decoded: ", v_gtp_decoded); |
| if(not match(v_gtp_decoded,t_m_pdu_gtpcv2('D4'O,v_gtpcv2_pdu))) { |
| setverdict(fail); |
| } |
| setverdict(pass); |
| } |
| |
| testcase tc_forwardRelocationResponse() runs on ct_GTPv2{ |
| var GTPCv2_PDUs v_gtpcv2_pdu:={ |
| forwardRelocationResponse:= { |
| cause := valueof(t_cause), |
| fullyQualifiedTEID := omit, |
| indication := omit, |
| bearerContextGrouped := omit, |
| fullyQualifiedCause := omit, |
| transparentContainer := omit, |
| lDN := omit, |
| nodeName := omit, |
| nodeNumber := {valueof(t_nodeNumber)}, |
| nodeIdentifier := {valueof(t_nodeIdentifier),valueof(t_nodeIdentifier)}, |
| privateExtension := omit |
| } |
| } |
| var PDU_GTPCv2 v_pdu_gtpcv2 := valueof(t_pdu_gtpcv2('86'O,v_gtpcv2_pdu)); |
| log("Original: ", v_pdu_gtpcv2); |
| var octetstring v_gtp_encoded := enc_PDU_GTPCv2(v_pdu_gtpcv2); |
| log("Encoded value: ", v_gtp_encoded); |
| var PDU_GTPCv2 v_gtp_decoded := dec_PDU_GTPCv2(v_gtp_encoded); |
| log("Decoded: ", v_gtp_decoded); |
| if(not match(v_gtp_decoded,t_m_pdu_gtpcv2('86'O,v_gtpcv2_pdu))) { |
| setverdict(fail); |
| } |
| setverdict(pass); |
| } |
| |
| testcase tc_contextRequest() runs on ct_GTPv2{ |
| var GTPCv2_PDUs v_gtpcv2_pdu:={ |
| contextRequest:= { |
| iMSI := omit, |
| gUTI := omit, |
| uLI := omit, |
| pTMSI := omit, |
| pTMSI_Signature := omit, |
| complete_TAU_RequestMessage := omit, |
| address_and_TEID_for_ControlPlane := omit, |
| portNumber := omit, |
| rAT_Type := omit, |
| indication := omit, |
| hop_Counter := omit, |
| target_PLMN_ID := omit, |
| lDN := omit, |
| nodeName := omit, |
| sGSNNumber := valueof(t_nodeNumber), |
| nodeIdentifier := {valueof(t_nodeIdentifier),valueof(t_nodeIdentifier)}, |
| cIoT_OptimizationsSupportIndication := valueof(t_cIoT_OptimizationsSupportIndication), |
| privateExtension := omit |
| } |
| } |
| var PDU_GTPCv2 v_pdu_gtpcv2 := valueof(t_pdu_gtpcv2('82'O,v_gtpcv2_pdu)); |
| log("Original: ", v_pdu_gtpcv2); |
| var octetstring v_gtp_encoded := enc_PDU_GTPCv2(v_pdu_gtpcv2); |
| log("Encoded value: ", v_gtp_encoded); |
| var PDU_GTPCv2 v_gtp_decoded := dec_PDU_GTPCv2(v_gtp_encoded); |
| log("Decoded: ", v_gtp_decoded); |
| if(not match(v_gtp_decoded,t_m_pdu_gtpcv2('82'O,v_gtpcv2_pdu))) { |
| setverdict(fail); |
| } |
| setverdict(pass); |
| } |
| |
| testcase tc_changeNotificationRequest() runs on ct_GTPv2{ |
| var GTPCv2_PDUs v_gtpcv2_pdu:={ |
| changeNotificationRequest:= { |
| iMSI := omit, |
| mEI := omit, |
| indication := omit, |
| rAT_Type := valueof(t_ratType), |
| uLI := omit, |
| user_CSG_Information := omit, |
| gTPC_IP_Address := omit, |
| linkedBearerIdentity := omit, |
| presenceReportingAreaInformation := {valueof(t_presenceReportingAreaInformation)}, |
| counter := omit, |
| secondary_RAT_UsageDataReport := omit, |
| privateExtension := omit |
| } |
| } |
| var PDU_GTPCv2 v_pdu_gtpcv2 := valueof(t_pdu_gtpcv2('26'O,v_gtpcv2_pdu)); |
| log("Original: ", v_pdu_gtpcv2); |
| var octetstring v_gtp_encoded := enc_PDU_GTPCv2(v_pdu_gtpcv2); |
| log("Encoded value: ", v_gtp_encoded); |
| var PDU_GTPCv2 v_gtp_decoded := dec_PDU_GTPCv2(v_gtp_encoded); |
| log("Decoded: ", v_gtp_decoded); |
| if(not match(v_gtp_decoded,t_m_pdu_gtpcv2('26'O,v_gtpcv2_pdu))) { |
| setverdict(fail); |
| } |
| setverdict(pass); |
| } |
| |
| testcase tc_changeNotificationResponse() runs on ct_GTPv2{ |
| var GTPCv2_PDUs v_gtpcv2_pdu:={ |
| changeNotificationResponse:= { |
| iMSI := omit, |
| mEI := omit, |
| cause := valueof(t_cause), |
| changeReportingAction := omit, |
| cSG_InformationReportingAction := omit, |
| presenceReportingAreaAction := {valueof(t_presenceReportingAreaAction)}, |
| privateExtension := omit |
| } |
| } |
| var PDU_GTPCv2 v_pdu_gtpcv2 := valueof(t_pdu_gtpcv2('27'O,v_gtpcv2_pdu)); |
| log("Original: ", v_pdu_gtpcv2); |
| var octetstring v_gtp_encoded := enc_PDU_GTPCv2(v_pdu_gtpcv2); |
| log("Encoded value: ", v_gtp_encoded); |
| var PDU_GTPCv2 v_gtp_decoded := dec_PDU_GTPCv2(v_gtp_encoded); |
| log("Decoded: ", v_gtp_decoded); |
| if(not match(v_gtp_decoded,t_m_pdu_gtpcv2('27'O,v_gtpcv2_pdu))) { |
| setverdict(fail); |
| } |
| setverdict(pass); |
| v_gtpcv2_pdu.changeNotificationResponse.presenceReportingAreaAction := {valueof(t_presenceReportingAreaAction2) } |
| v_pdu_gtpcv2 := valueof(t_pdu_gtpcv2('27'O,v_gtpcv2_pdu)); |
| v_gtp_encoded := enc_PDU_GTPCv2(v_pdu_gtpcv2); |
| log("Encoded value: ", v_gtp_encoded); |
| v_gtp_decoded := dec_PDU_GTPCv2(v_gtp_encoded); |
| log("Decoded: ", v_gtp_decoded); |
| if(not match(v_gtp_decoded,t_m_pdu_gtpcv2('27'O,v_gtpcv2_pdu))) { |
| setverdict(fail); |
| } |
| setverdict(pass); |
| |
| } |
| |
| testcase tc_contextResponse() runs on ct_GTPv2{ |
| var GTPCv2_PDUs v_gtpcv2_pdu:={ |
| contextResponse:= { |
| cause := valueof(t_cause), |
| iMSI := omit, |
| mM_Context := omit, |
| pDN_Connection := valueof(t_pDN_ConnectionGrouped_List), |
| fullyQualifiedTEID := omit, |
| nodeName := omit, |
| indication := omit, |
| traceInformation := omit, |
| iP_Addr := omit, |
| rFSP_Index := omit, |
| uE_TimeZone := omit, |
| lDN := omit, |
| mDT_Configuration := valueof(t_mDT_Configuration), |
| user_CSG_Information := omit, |
| monitoringEventInformation := omit, |
| uEUsageType := omit, |
| mME_US_SCEF_PDN_Connection := valueof(t_sCEF_PDN_ConnectionGrouped_List), |
| rAT_Type := omit, |
| servingPLMNRateControl := omit, |
| counter := omit, |
| privateExtension := omit |
| } |
| } |
| var PDU_GTPCv2 v_pdu_gtpcv2 := valueof(t_pdu_gtpcv2('83'O,v_gtpcv2_pdu)); |
| log("Original: ", v_pdu_gtpcv2); |
| var octetstring v_gtp_encoded := enc_PDU_GTPCv2(v_pdu_gtpcv2); |
| log("Encoded value: ", v_gtp_encoded); |
| var PDU_GTPCv2 v_gtp_decoded := dec_PDU_GTPCv2(v_gtp_encoded); |
| log("Decoded: ", v_gtp_decoded); |
| if(not match(v_gtp_decoded,t_m_pdu_gtpcv2('83'O,v_gtpcv2_pdu))) { |
| setverdict(fail); |
| } |
| setverdict(pass); |
| } |
| |
| testcase tc_remoteUEReportNotification() runs on ct_GTPv2{ |
| var GTPCv2_PDUs v_gtpcv2_pdu := { |
| remoteUEReportNotification := { |
| remoteUEContextGrouped := valueof(t_remoteUEContextGrouped), |
| privateExtension := omit |
| } |
| } |
| var PDU_GTPCv2 v_pdu_gtpcv2 := valueof(t_pdu_gtpcv2('28'O,v_gtpcv2_pdu)); |
| log("Original: ", v_pdu_gtpcv2); |
| var octetstring v_gtp_encoded := enc_PDU_GTPCv2(v_pdu_gtpcv2); |
| log("Encoded value: ", v_gtp_encoded); |
| var PDU_GTPCv2 v_gtp_decoded := dec_PDU_GTPCv2(v_gtp_encoded); |
| log("Decoded: ", v_gtp_decoded); |
| if(not match(v_gtp_decoded,t_m_pdu_gtpcv2('28'O,v_gtpcv2_pdu))) { |
| setverdict(fail); |
| } |
| setverdict(pass); |
| } |
| |
| testcase tc_remoteUEReportAcknowledge() runs on ct_GTPv2{ |
| var GTPCv2_PDUs v_gtpcv2_pdu := { |
| remoteUEReportAcknowledge := { |
| cause := valueof(t_cause), |
| privateExtension := omit |
| } |
| } |
| var PDU_GTPCv2 v_pdu_gtpcv2 := valueof(t_pdu_gtpcv2('29'O,v_gtpcv2_pdu)); |
| log("Original: ", v_pdu_gtpcv2); |
| var octetstring v_gtp_encoded := enc_PDU_GTPCv2(v_pdu_gtpcv2); |
| log("Encoded value: ", v_gtp_encoded); |
| var PDU_GTPCv2 v_gtp_decoded := dec_PDU_GTPCv2(v_gtp_encoded); |
| log("Decoded: ", v_gtp_decoded); |
| if(not match(v_gtp_decoded,t_m_pdu_gtpcv2('29'O,v_gtpcv2_pdu))) { |
| setverdict(fail); |
| } |
| setverdict(pass); |
| } |
| |
| control{ |
| execute(tc_createSessionRequest()); |
| execute(tc_createSessionResponse()); |
| execute(tc_createBearerRequest()); |
| execute(tc_createBearerResponse()); |
| execute(tc_bearerResourceCommand()); |
| execute(tc_bearerResourceFailureIndication()); |
| execute(tc_modifyBearerRequest()); |
| execute(tc_modifyBearerResponse()); |
| execute(tc_deleteSessionRequest()); |
| execute(tc_deleteBearerRequest()); |
| execute(tc_deleteSessionResponse()); |
| execute(tc_deleteBearerResponse()); |
| execute(tc_downlinkDataNotification()); |
| execute(tc_modifyBearerCommand()); |
| execute(tc_modifyBearerFailureIndication()); |
| execute(tc_updateBearerRequest()); |
| execute(tc_updateBearerResponse()); |
| execute(tc_deleteBearerCommand()); |
| execute(tc_deleteBearerFailureIndication2()); |
| execute(tc_deleteBearerFailureIndication()); |
| execute(tc_releaseAccessBearersRequest()); |
| execute(tc_releaseAccessBearersResponse()); |
| execute(tc_stopPagingIndication()); |
| execute(tc_modifyAccessBearersResponse()); |
| execute(tc_forwardRelocationResponse()); |
| execute(tc_contextRequest()); |
| execute(tc_changeNotificationRequest()); |
| execute(tc_changeNotificationResponse()); |
| execute(tc_contextResponse()); |
| execute(tc_remoteUEReportNotification()); |
| execute(tc_remoteUEReportAcknowledge()); |
| }; |
| |
| } |