/* Copyright (c) ETSI 2022. This software is subject to copyrights owned by ETSI. Non-exclusive permission is hereby granted, free of charge, to copy, reproduce and amend this file under the following conditions: It is provided "as is", without warranty of any kind, expressed or implied. ETSI shall never be liable for any claim, damages, or other liability arising from its use or inability of use.This permission does not apply to any documentation associated with this file for which ETSI keeps all rights reserved. The present copyright notice shall be included in all copies of whole or part of this file and shall not imply any sub-license right. */ //Translated from [i.5], Section 7.1.3. Package Layer_2_DL_SCH_Data_Transfer { //Procedures carried out by a component of a test configuration //or an actor during test execution Action preCondition : "Pre-test Conditions: RRC Connection Reconfiguration" ; Action preamble : "Preamble: The generic procedure to get UE in test state Loopback Activated (State 4) according to TS 36.508 clause 4.5 is executed, with all the parameters as specified in the procedure except that the RLC SDU size is set to return no data in uplink. (reference corresponding behavior once implemented" ; //User-defined verdicts //Alternatively the predefined verdicts may be used as well Type Verdict ; Verdict PASS; Verdict FAIL; //User-defined annotation types Annotation TITLE ; //Test description title Annotation STEP ; //Step identifiers in source documents Annotation PROCEDURE ; //Informal textual description of a test step Annotation PRECONDITION ; //Identify pre-condition behaviour Annotation PREAMBLE ; //Identify preamble behaviour. //Test objectives (copied verbatim from source document) Test Objective TP1 { from : "36523-1-a20_s07_01.doc::7.1.3.1.1 (1)" ; description : " with { UE in E-UTRA RRC_CONNECTED state } ensure that { when { UE receives downlink assignment on the PDCCH for the UE's C-RNTI and receives data in the associated subframe and UE performs HARQ operation } then { UE sends a HARQ feedback on the HARQ process } }" ; } Test Objective TP2 { from : "36523-1-a20_s07_01.doc::7.1.3.1.1 (2)" ; description : " with { UE in E-UTRA RRC_CONNECTED state } ensure that { when { UE receives downlink assignment on the PDCCH with a C-RNTI unknown by the UE and data is available in the associated subframe } then { UE does not send any HARQ feedback on the HARQ process } }" ; } //Relevant data definitions Type PDU; PDU mac_pdu ; Type ACK ; ACK harq_ack ; Type C_RNTI; C_RNTI ue; C_RNTI unknown; Type PDCCH (optional c_rnti of type C_RNTI); PDCCH pdcch(); //User-defined time units Time Second; Second five; //Gate type definitions Gate Type defaultGT accepts ACK, PDU, PDCCH, C_RNTI ; //Component type definitions Component Type defaultCT having { gate g of type defaultGT; } //Test configuration definition Test Configuration defaultTC { create Tester SS of type defaultCT; create SUT UE of type defaultCT ; connect UE.g to SS.g ; } //Test description definition Test Description TD_7_1_3_1 uses configuration defaultTC { //Pre-conditions and preamble from the source document perform action preCondition with { PRECONDITION ; } ; perform action preamble with { PREAMBLE ; } ; //Test sequence SS.g sends pdcch (c_rnti=ue) to UE.g with { STEP : "1" ; PROCEDURE : "SS transmits a downlink assignment including the C-RNTI assigned to the UE" ; } ; SS.g sends mac_pdu to UE.g with { STEP : "2" ; PROCEDURE : "SS transmits in the indicated downlink assignment a RLC PDU in a MAC PDU" ; } ; UE.g sends harq_ack to SS.g with { STEP : "3" ; PROCEDURE : "Check: Does the UE transmit an HARQ ACK on PUCCH?" ; test objectives : TP1 ; } ; set verdict to PASS ; SS.g sends pdcch (c_rnti=unknown) to UE.g with { STEP : "4" ; PROCEDURE : "SS transmits a downlink assignment to including a C-RNTI different from the assigned to the UE" ; } ; SS.g sends mac_pdu to UE.g with { STEP : "5" ; PROCEDURE : "SS transmits in the indicated downlink assignment a RLC PDU in a MAC PDU" ; } ; //Interpolated original step 6 into an alternative behaviour, //covering both the incorrect and the correct behaviours of the UE alternatively { UE.g sends harq_ack to SS.g ; set verdict to FAIL ; } or { gate SS.g is quiet for five ; set verdict to PASS ; } with { STEP : "6" ; PROCEDURE : "Check: Does the UE send any HARQ ACK on PUCCH?" ; test objectives : TP2 ; } } with { Note : "Note 1: For TDD, the timing of ACK/NACK is not constant as FDD, see Table 10.1-1 of TS 36.213." ; } } with { Note : "Taken from 3GPP TS 36.523-1 V10.2.0 (2012-09)" ; TITLE : "Correct handling of DL assignment / Dynamic case" ; }