Fix for PushAV missing checks reported for PAVST 2.1, 2.6 (#41371)

* Fix for issues reported

Sambhvai <sambhavi.1@samsung.com>

Signed-off-by: Raveendra Karu <r.karu@samsung.com>

* Resolve Comments

Co-author: Sambhavi<sambhavi.1@samsung.com>
Signed-off-by: Raveendra Karu <r.karu@samsung.com>

* Added test case to test zone based motion

Co-author: Sambhavi<sambhavi.1@samsung.com>
Signed-off-by: Raveendra Karu <r.karu@samsung.com>

* Restyled by autopep8

* Fix Lint Errors

Co-author: Sambhavi <sambhavi.1@samsung.com>
Signed-off-by: Raveendra Karu <r.karu@samsung.com>

* Removed TC_PAVST_2_11.py as there is no test plan.

Signed-off-by: Raveendra Karu <r.karu@samsung.com>

---------

Signed-off-by: Raveendra Karu <r.karu@samsung.com>
Co-authored-by: Restyled.io <commits@restyled.io>
Co-authored-by: marktrayer <m.trayer@samsung.com>
diff --git a/src/python_testing/TC_PAVSTTestBase.py b/src/python_testing/TC_PAVSTTestBase.py
index 24374c8..27442b0 100644
--- a/src/python_testing/TC_PAVSTTestBase.py
+++ b/src/python_testing/TC_PAVSTTestBase.py
@@ -268,6 +268,8 @@
                     e.clusterStatus == expected_cluster_status, "Unexpected error returned"
                 )
                 return e.clusterStatus
+            if (e.status == Status.ResourceExhausted):
+                asserts.fail("RESOURCE_EXHAUSTED")
             return e.status
         pass
 
diff --git a/src/python_testing/TC_PAVST_2_1.py b/src/python_testing/TC_PAVST_2_1.py
index 2393298..dcc3949 100644
--- a/src/python_testing/TC_PAVST_2_1.py
+++ b/src/python_testing/TC_PAVST_2_1.py
@@ -86,9 +86,11 @@
             endpoint=endpoint, cluster=cluster, attribute=attr.CurrentConnections
         )
         for config in transport_configs:
-            isValidTransportStatus = (config.TransportStatus == cluster.TransportStatusEnum.kActive |
-                                      config.TransportStatus == cluster.TransportStatusEnum.kInactive)
-            asserts.assert_true(isValidTransportStatus, "TransportStatus must be a defined value!")
+            isValidTransportStatus = ((config.TransportStatus == cluster.TransportStatusEnum.kActive) |
+                                      (config.TransportStatus == cluster.TransportStatusEnum.kInactive))
+            isValidConnectionId = config.ConnectionId >= 0
+            isValidData = isValidTransportStatus and isValidConnectionId
+            asserts.assert_true(isValidData, "TransportStatus must be a defined value!")
 
 
 if __name__ == "__main__":
diff --git a/src/python_testing/TC_PAVST_2_6.py b/src/python_testing/TC_PAVST_2_6.py
index 51a5e22..7e1c7f9 100644
--- a/src/python_testing/TC_PAVST_2_6.py
+++ b/src/python_testing/TC_PAVST_2_6.py
@@ -195,6 +195,8 @@
         )
         aConnectionID = transportConfigs[0].connectionID
         aTransportStatus = transportConfigs[0].transportStatus
+        aTransportOptions = transportConfigs[0].transportOptions
+        aTransportOptions.expiryTime = aTransportOptions.expiryTime + 3
 
         # TH1 sends command
         self.step(3)
@@ -245,6 +247,15 @@
             transportStatus=not aTransportStatus
         )
         status = await self.psvt_set_transport_status(cmd)
+        cmd = pvcluster.Commands.ModifyPushTransport(
+            connectionID=aConnectionID,
+            transportOptions=aTransportOptions,
+        )
+        # Transport Status is now active, if upload started and its in progress then ModifyPushTransport would check for Busy Transport Status
+        status1 = await self.psvt_modify_push_transport(cmd)
+        asserts.assert_true(
+            status1 == Status.Success,
+            "DUT responds with SUCCESS status code.")
         asserts.assert_true(
             status == Status.Success,
             "DUT responds with SUCCESS status code.")
@@ -258,9 +269,17 @@
         self.step(8)
         cmd = pvcluster.Commands.SetTransportStatus(
             connectionID=Nullable(),
-            transportStatus=not aTransportStatus
+            transportStatus=Clusters.PushAvStreamTransport.Enums.TransportStatusEnum.kInactive
         )
         status = await self.psvt_set_transport_status(cmd)
+        cmd = pvcluster.Commands.ModifyPushTransport(
+            connectionID=aConnectionID,
+            transportOptions=aTransportOptions,
+        )
+        status1 = await self.psvt_modify_push_transport(cmd)
+        asserts.assert_true(
+            status1 == Status.Success,
+            "DUT responds with SUCCESS status code.")
         asserts.assert_true(
             status == Status.Success,
             "DUT responds with SUCCESS status code.")
@@ -274,7 +293,7 @@
         )
         asserts.assert_true(
             transportConfigs[0].transportStatus
-            == (not aTransportStatus),
+            == (Clusters.PushAvStreamTransport.Enums.TransportStatusEnum.kInactive),
             "Transport Status must be same the modified one",
         )