<!-- SPDX-License-Identifier: LicenseRef-CSSL-1.0 -->

<testCaseList>
  <htmlTabRef>rfsim-5gnr-tdd-multiue</htmlTabRef>
  <htmlTabName>Monolithic SA TDD gNB multiue</htmlTabName>
  <htmlTabIcon>wrench</htmlTabIcon>

  <testCase>
    <class>Pull_Local_Registry</class>
    <desc>Pull Images from Local Registry</desc>
    <node>localhost</node>
    <images>oai-gnb-asan oai-nr-ue</images>
  </testCase>

  <testCase>
    <class>Create_Workspace</class>
    <desc>Create new Workspace</desc>
    <node>localhost</node>
  </testCase>

  <testCase>
    <class>Deploy_Object</class>
    <desc>Deploy OAI 5G CoreNetwork</desc>
    <node>localhost</node>
    <yaml_path>ci-scripts/yaml_files/5g_rfsimulator_multiue</yaml_path>
    <services>mysql oai-amf oai-smf oai-upf oai-ext-dn</services>
  </testCase>

  <testCase>
    <class>Deploy_Object</class>
    <desc>Deploy OAI 5G gNB RF sim SA</desc>
    <node>localhost</node>
    <yaml_path>ci-scripts/yaml_files/5g_rfsimulator_multiue</yaml_path>
    <services>oai-gnb</services>
  </testCase>

  <testCase>
    <class>Deploy_Object</class>
    <desc>Deploy OAI 5G NR-UE RF sim SA</desc>
    <node>localhost</node>
    <yaml_path>ci-scripts/yaml_files/5g_rfsimulator_multiue</yaml_path>
    <services>oai-nr-ue</services>
  </testCase>

  <testCase>
    <class>Attach_UE</class>
    <desc>Attach OAI UE (Wait for IP)</desc>
    <id>rfsim5g_multiue1 rfsim5g_multiue2 rfsim5g_multiue3 rfsim5g_multiue4 rfsim5g_multiue5 rfsim5g_multiue6 rfsim5g_multiue7 rfsim5g_multiue8 rfsim5g_multiue9 rfsim5g_multiue10</id>
    <node>localhost</node>
  </testCase>

  <testCase>
    <class>Ping</class>
    <desc>Ping ext-dn from NR-UE</desc>
    <id>rfsim5g_multiue1</id>
    <node>localhost</node>
    <svr_id>rfsim5g_ext_dn</svr_id>
    <svr_node>localhost</svr_node>
    <ping_args>-c 20 -i 0.25</ping_args>
    <ping_packetloss_threshold>5</ping_packetloss_threshold>
  </testCase>

  <testCase>
    <class>Ping</class>
    <desc>Ping NR-UE from ext-dn</desc>
    <id>rfsim5g_ext_dn</id>
    <node>localhost</node>
    <svr_id>rfsim5g_multiue1</svr_id>
    <svr_node>localhost</svr_node>
    <ping_args>-c 20 -i 0.25</ping_args>
    <ping_packetloss_threshold>5</ping_packetloss_threshold>
  </testCase>

  <testCase>
    <class>Ping</class>
    <desc>Ping ext-dn from Second NR-UE</desc>
    <id>rfsim5g_multiue2</id>
    <node>localhost</node>
    <svr_id>rfsim5g_ext_dn</svr_id>
    <svr_node>localhost</svr_node>
    <ping_args>-c 20 -i 0.25</ping_args>
    <ping_packetloss_threshold>5</ping_packetloss_threshold>
  </testCase>

  <testCase>
    <class>Ping</class>
    <desc>Ping Second NR-UE from ext-dn</desc>
    <id>rfsim5g_ext_dn</id>
    <node>localhost</node>
    <svr_id>rfsim5g_multiue2</svr_id>
    <svr_node>localhost</svr_node>
    <ping_args>-c 20 -i 0.25</ping_args>
    <ping_packetloss_threshold>5</ping_packetloss_threshold>
  </testCase>

  <testCase>
    <class>Ping</class>
    <desc>Ping ext-dn from all UEs</desc>
    <id>rfsim5g_multiue1 rfsim5g_multiue2 rfsim5g_multiue3 rfsim5g_multiue4 rfsim5g_multiue5 rfsim5g_multiue6 rfsim5g_multiue7 rfsim5g_multiue8 rfsim5g_multiue9 rfsim5g_multiue10</id>
    <node>localhost</node>
    <svr_id>rfsim5g_ext_dn</svr_id>
    <svr_node>localhost</svr_node>
    <ping_args>-c 20 -i 0.25 -s 1016</ping_args>
    <ping_packetloss_threshold>5</ping_packetloss_threshold>
  </testCase>

  <testCase>
    <class>Iperf</class>
    <desc>Iperf (DL/3Mbps/UDP)(20 sec)</desc>
    <iperf_args>-u -b 3M -t 20 -R</iperf_args>
    <id>rfsim5g_multiue1</id>
    <node>localhost</node>
    <svr_id>rfsim5g_ext_dn</svr_id>
    <svr_node>localhost</svr_node>
    <iperf_packetloss_threshold>5</iperf_packetloss_threshold>
    <iperf_bitrate_threshold>90</iperf_bitrate_threshold>
  </testCase>

  <testCase>
    <class>Iperf</class>
    <desc>Iperf (UL/1Mbps/UDP)(20 sec)</desc>
    <iperf_args>-u -b 1M -t 20</iperf_args>
    <id>rfsim5g_multiue1</id>
    <node>localhost</node>
    <svr_id>rfsim5g_ext_dn</svr_id>
    <svr_node>localhost</svr_node>
    <iperf_packetloss_threshold>5</iperf_packetloss_threshold>
    <iperf_bitrate_threshold>90</iperf_bitrate_threshold>
  </testCase>

  <testCase>
    <class>Detach_UE</class>
    <desc>Detach OAI UEs</desc>
    <id>rfsim5g_multiue1</id>
    <node>localhost</node>
  </testCase>

  <testCase>
    <class>Undeploy_Object</class>
    <always_exec>true</always_exec>
    <desc>Undeploy all OAI 5G stack</desc>
    <node>localhost</node>
    <yaml_path>ci-scripts/yaml_files/5g_rfsimulator_multiue</yaml_path>
    <analysis>
      <services>oai-gnb=RetxCheck=1,0,0,0 oai-gnb=EndsWithBye oai-nr-ue</services>
    </analysis>
  </testCase>

  <testCase>
    <class>Clean_Test_Server_Images</class>
    <always_exec>true</always_exec>
    <desc>Clean Test Images on Test Server</desc>
    <node>localhost</node>
    <images>oai-gnb-asan oai-nr-ue</images>
  </testCase>

</testCaseList>
