Fix GNPy functional tests 01/99501/1
authorguillaume.lambert <guillaume.lambert@orange.com>
Thu, 2 Sep 2021 12:23:44 +0000 (14:23 +0200)
committerguillaume.lambert <guillaume.lambert@orange.com>
Thu, 27 Jan 2022 15:48:57 +0000 (16:48 +0100)
"A-to-Z" and "Z-to-A" items have been swapped in arrays returned by
the PCE computation API during the updates to handle high rates.

GNPy functional test must support any order.

JIRA: TRNSPRTPCE-403
Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: If4db8598366bd1387d05dd65220beda589dbb4c1

tests/transportpce_tests/with_docker/test01_gnpy.py

index 57d8935bdb62421ac93a161183ab7a8f222bf0cc..103e06f08d59cc5c1abfb921c600c5bd652cdae8 100644 (file)
@@ -114,12 +114,14 @@ class TransportGNPYtesting(unittest.TestCase):
         self.assertEqual(res['output']['configuration-response-common'][
             'response-message'],
             'Path is calculated by PCE')
-        self.assertEqual(res['output']['gnpy-response'][1]['path-dir'],
-                         'A-to-Z')
-        self.assertEqual(res['output']['gnpy-response'][1]['feasibility'], True)
-        self.assertEqual(res['output']['gnpy-response'][0]['path-dir'],
-                         'Z-to-A')
+        self.assertIn('A-to-Z',
+                      [res['output']['gnpy-response'][0]['path-dir'],
+                       res['output']['gnpy-response'][1]['path-dir']])
+        self.assertIn('Z-to-A',
+                      [res['output']['gnpy-response'][0]['path-dir'],
+                       res['output']['gnpy-response'][1]['path-dir']])
         self.assertEqual(res['output']['gnpy-response'][0]['feasibility'], True)
+        self.assertEqual(res['output']['gnpy-response'][1]['feasibility'], True)
         time.sleep(5)
 
     # Path computed by PCE is not feasible by GNPy and GNPy cannot find
@@ -142,14 +144,16 @@ class TransportGNPYtesting(unittest.TestCase):
         self.assertEqual(res['output']['configuration-response-common'][
             'response-message'],
             'No path available by PCE and GNPy ')
-        self.assertEqual(res['output']['gnpy-response'][1]['path-dir'],
-                         'A-to-Z')
-        self.assertEqual(res['output']['gnpy-response'][1]['feasibility'],
-                         False)
-        self.assertEqual(res['output']['gnpy-response'][0]['path-dir'],
-                         'Z-to-A')
+        self.assertIn('A-to-Z',
+                      [res['output']['gnpy-response'][0]['path-dir'],
+                       res['output']['gnpy-response'][1]['path-dir']])
+        self.assertIn('Z-to-A',
+                      [res['output']['gnpy-response'][0]['path-dir'],
+                       res['output']['gnpy-response'][1]['path-dir']])
         self.assertEqual(res['output']['gnpy-response'][0]['feasibility'],
                          False)
+        self.assertEqual(res['output']['gnpy-response'][1]['feasibility'],
+                         False)
         time.sleep(5)
 
     # #PCE cannot find a path while GNPy finds a feasible one
@@ -170,11 +174,13 @@ class TransportGNPYtesting(unittest.TestCase):
         self.assertEqual(res['output']['configuration-response-common'][
             'response-message'],
             'Path is calculated by GNPy')
-        self.assertEqual(res['output']['gnpy-response'][1]['path-dir'],
-                         'A-to-Z')
+        self.assertIn('A-to-Z',
+                      [res['output']['gnpy-response'][0]['path-dir'],
+                       res['output']['gnpy-response'][1]['path-dir']])
+        self.assertIn('Z-to-A',
+                      [res['output']['gnpy-response'][0]['path-dir'],
+                       res['output']['gnpy-response'][1]['path-dir']])
         self.assertEqual(res['output']['gnpy-response'][1]['feasibility'], True)
-        self.assertEqual(res['output']['gnpy-response'][0]['path-dir'],
-                         'Z-to-A')
         self.assertEqual(res['output']['gnpy-response'][0]['feasibility'], True)
         time.sleep(5)