fix but for ETSI Catalog Manager needs to trigger a notification after storing ETSI... 23/106223/1
authorhongyuzhao <zhao.hongyu@zte.com.cn>
Sat, 18 Apr 2020 02:19:00 +0000 (10:19 +0800)
committerhongyuzhao <zhao.hongyu@zte.com.cn>
Sat, 18 Apr 2020 02:19:27 +0000 (10:19 +0800)
Change-Id: I3b77aca1c052b0e2467e2fd72060dd628e0df609
Issue-ID: MODELING-352
Signed-off-by: hongyuzhao <zhao.hongyu@zte.com.cn>
catalog/packages/biz/notificationsutil.py
catalog/packages/tests/test_nsdm_subscription.py
catalog/packages/tests/test_vnf_pkg_subscription.py
catalog/packages/tests/test_vnfpackage.py

index 3a1c60c..a13eae9 100644 (file)
@@ -88,7 +88,7 @@ class NotificationsUtil(object):
                     username = params.get("userName")
                     password = params.get("password")
                     resp = requests.post(callbackuri,
-                                         data=notification,
+                                         data=json.dumps(notification),
                                          headers={'Connection': 'close',
                                                   'content-type': 'application/json',
                                                   'accept': 'application/json'},
@@ -102,7 +102,7 @@ class NotificationsUtil(object):
                     pass
             else:
                 resp = requests.post(callbackuri,
-                                     data=notification,
+                                     data=json.dumps(notification),
                                      headers={'Connection': 'close',
                                               'content-type': 'application/json',
                                               'accept': 'application/json'},
index 4e14ca1..b992b2d 100644 (file)
@@ -625,22 +625,22 @@ class TestNsdmSubscription(TestCase):
             'timeStamp': "nowtime()",
             'nsdInfoId': "d0ea5ec3-0b98-438a-9bea-488230cff174",
             'nsdId': "b632bddc-bccd-4180-bd8d-4e8a9578eff7",
-            "subscriptionId": "1111",
             '_links': {
-                'subscription': {
-                    'href': 'http://%s:%s/%s%s' % (pub_config.MSB_SERVICE_IP,
-                                                   pub_config.MSB_SERVICE_PORT,
-                                                   const.NSDM_SUBSCRIPTION_ROOT_URI,
-                                                   "1111")},
                 'nsdInfo': {
                     'href': 'http://%s:%s/%s/ns_descriptors/%s' % (pub_config.MSB_SERVICE_IP,
                                                                    pub_config.MSB_SERVICE_PORT,
                                                                    const.NSD_URL_PREFIX,
-                                                                   "d0ea5ec3-0b98-438a-9bea-488230cff174")
-                }
-            }
+                                                                   "d0ea5ec3-0b98-438a-9bea-488230cff174")},
+                'subscription': {
+                    'href': 'http://%s:%s/%s%s' % (pub_config.MSB_SERVICE_IP,
+                                                   pub_config.MSB_SERVICE_PORT,
+                                                   const.NSDM_SUBSCRIPTION_ROOT_URI,
+                                                   "1111")}
+
+            },
+            "subscriptionId": "1111"
         }
-        mock_requests_post.assert_called_with(expect_callbackuri, data=expect_notification,
+        mock_requests_post.assert_called_with(expect_callbackuri, data=json.dumps(expect_notification),
                                               auth=HTTPBasicAuth("username", "password"),
                                               headers={'Connection': 'close',
                                                        'content-type': 'application/json',
@@ -680,24 +680,24 @@ class NotificationTest(TestCase):
             'timeStamp': "nowtime()",
             'nsdInfoId': "nsdinfoid1",
             'nsdId': "nsdid1",
-            'onboardingFailureDetails': "NSD(nsdid1) already exists.",
-            "subscriptionId": "1",
             '_links': {
-                'subscription': {
-                    'href': 'http://%s:%s/%s%s' % (pub_config.MSB_SERVICE_IP,
-                                                   pub_config.MSB_SERVICE_PORT,
-                                                   const.NSDM_SUBSCRIPTION_ROOT_URI,
-                                                   "1")},
                 'nsdInfo': {
                     'href': 'http://%s:%s/%s/ns_descriptors/%s' % (pub_config.MSB_SERVICE_IP,
                                                                    pub_config.MSB_SERVICE_PORT,
                                                                    const.NSD_URL_PREFIX,
                                                                    "nsdinfoid1")
-                }
-            }
+                },
+                'subscription': {
+                    'href': 'http://%s:%s/%s%s' % (pub_config.MSB_SERVICE_IP,
+                                                   pub_config.MSB_SERVICE_PORT,
+                                                   const.NSDM_SUBSCRIPTION_ROOT_URI,
+                                                   "1")}
+            },
+            'onboardingFailureDetails': "NSD(nsdid1) already exists.",
+            "subscriptionId": "1"
         }
         mock_requests_post.assert_called_with(expect_callbackuri,
-                                              data=expect_notification,
+                                              data=json.dumps(expect_notification),
                                               headers={'Connection': 'close',
                                                        'content-type': 'application/json',
                                                        'accept': 'application/json'},
@@ -722,22 +722,22 @@ class NotificationTest(TestCase):
             'timeStamp': "nowtime()",
             'pnfdInfoIds': "pnfdInfoIds1",
             'pnfdId': "pnfdId1",
-            "subscriptionId": "1",
             '_links': {
-                'subscription': {
-                    'href': 'http://%s:%s/%s%s' % (pub_config.MSB_SERVICE_IP,
-                                                   pub_config.MSB_SERVICE_PORT,
-                                                   const.NSDM_SUBSCRIPTION_ROOT_URI,
-                                                   "1")},
                 'pnfdInfo': {
                     'href': 'http://%s:%s/%s/pnf_descriptors/%s' % (pub_config.MSB_SERVICE_IP,
                                                                     pub_config.MSB_SERVICE_PORT,
                                                                     const.NSD_URL_PREFIX,
                                                                     "pnfdInfoIds1")
-                }
-            }
+                },
+                'subscription': {
+                    'href': 'http://%s:%s/%s%s' % (pub_config.MSB_SERVICE_IP,
+                                                   pub_config.MSB_SERVICE_PORT,
+                                                   const.NSDM_SUBSCRIPTION_ROOT_URI,
+                                                   "1")},
+            },
+            "subscriptionId": "1",
         }
-        mock_requests_post.assert_called_with(expect_callbackuri, data=expect_notification,
+        mock_requests_post.assert_called_with(expect_callbackuri, data=json.dumps(expect_notification),
                                               headers={'Connection': 'close',
                                                        'content-type': 'application/json',
                                                        'accept': 'application/json'},
index 080a7c4..28edd64 100644 (file)
@@ -258,22 +258,22 @@ class TestNfPackageSubscription(TestCase):
             'timeStamp': "2019-02-16 14:41:16",
             'vnfPkgId': uuid_vnfPackageId,
             'vnfdId': uuid_vnfdid,
-            "subscriptionId": uuid_subscriptid,
             '_links': {
-                'subscription': {
-                    'href': 'http://%s:%s/%s%s' % (pub_config.MSB_SERVICE_IP,
-                                                   pub_config.MSB_SERVICE_PORT,
-                                                   const.VNFPKG_SUBSCRIPTION_ROOT_URI,
-                                                   uuid_subscriptid)},
                 'vnfPackage': {
                     'href': 'http://%s:%s/%s/vnf_packages/%s' % (pub_config.MSB_SERVICE_IP,
                                                                  pub_config.MSB_SERVICE_PORT,
                                                                  const.PKG_URL_PREFIX,
                                                                  uuid_vnfPackageId)
-                }
-            }
+                },
+                'subscription': {
+                    'href': 'http://%s:%s/%s%s' % (pub_config.MSB_SERVICE_IP,
+                                                   pub_config.MSB_SERVICE_PORT,
+                                                   const.VNFPKG_SUBSCRIPTION_ROOT_URI,
+                                                   uuid_subscriptid)}
+            },
+            "subscriptionId": uuid_subscriptid
         }
-        mock_requests_post.assert_called_with(vnf_subscription_data["callbackUri"], data=expect_notification,
+        mock_requests_post.assert_called_with(vnf_subscription_data["callbackUri"], data=json.dumps(expect_notification),
                                               headers={'Connection': 'close',
                                                        'content-type': 'application/json',
                                                        'accept': 'application/json'},
@@ -331,24 +331,24 @@ class NotificationTest(TestCase):
             'timeStamp': "2019-12-16 14:41:16",
             'vnfPkgId': "vnfpkgid1",
             'vnfdId': "vnfdid1",
-            'changeType': const.PKG_CHANGE_TYPE.OP_STATE_CHANGE,
-            'operationalState': None,
-            "subscriptionId": "1",
             '_links': {
-                'subscription': {
-                    'href': 'http://%s:%s/%s%s' % (pub_config.MSB_SERVICE_IP,
-                                                   pub_config.MSB_SERVICE_PORT,
-                                                   const.VNFPKG_SUBSCRIPTION_ROOT_URI,
-                                                   "1")},
                 'vnfPackage': {
                     'href': 'http://%s:%s/%s/vnf_packages/%s' % (pub_config.MSB_SERVICE_IP,
                                                                  pub_config.MSB_SERVICE_PORT,
                                                                  const.PKG_URL_PREFIX,
                                                                  "vnfpkgid1")
-                }
-            }
+                },
+                'subscription': {
+                    'href': 'http://%s:%s/%s%s' % (pub_config.MSB_SERVICE_IP,
+                                                   pub_config.MSB_SERVICE_PORT,
+                                                   const.VNFPKG_SUBSCRIPTION_ROOT_URI,
+                                                   "1")}
+            },
+            'changeType': const.PKG_CHANGE_TYPE.OP_STATE_CHANGE,
+            'operationalState': None,
+            "subscriptionId": "1"
         }
-        mock_requests_post.assert_called_with(expect_callbackuri, data=expect_notification,
+        mock_requests_post.assert_called_with(expect_callbackuri, data=json.dumps(expect_notification),
                                               headers={'Connection': 'close',
                                                        'content-type': 'application/json',
                                                        'accept': 'application/json'},
index 0b8bb25..df27212 100644 (file)
@@ -284,9 +284,7 @@ class TestNfPackage(TestCase):
                     "VnfPackageOnboardingNotification",
                     "VnfPackageChangeNotification"
                 ],
-                "vnfdId": [
-                    "b1bb0ce7-2222-4fa7-95ed-4840d70a1177"
-                ],
+                "vnfPkgId": [uuid_csarid],
                 "operationalState": ["ENABLED", "DISABLED"]
             },
             "callbackUri": "https://so-vnfm-simulator.onap:9093/vnfpkgm/v1/notification",
@@ -332,17 +330,18 @@ class TestNfPackage(TestCase):
                                                                  pub_config.MSB_SERVICE_PORT,
                                                                  const.PKG_URL_PREFIX,
                                                                  uuid_csarid)},
-                    'subscription': {
-                        'href': 'http://%s:%s/%s%s' % (pub_config.MSB_SERVICE_IP,
-                                                       pub_config.MSB_SERVICE_PORT,
-                                                       const.VNFPKG_SUBSCRIPTION_ROOT_URI,
-                                                       uuid_subscriptid)}
+                'subscription': {
+                    'href': 'http://%s:%s/%s%s' % (pub_config.MSB_SERVICE_IP,
+                                                   pub_config.MSB_SERVICE_PORT,
+                                                   const.VNFPKG_SUBSCRIPTION_ROOT_URI,
+                                                   uuid_subscriptid)}
 
             },
             "subscriptionId": uuid_subscriptid
         }
         mock_requests_post.return_value.status_code = 204
-        mock_requests_post.assert_called_with(vnf_subscription_data["callbackUri"], data=expect_onboarding_notification,
+        mock_requests_post.assert_called_with(vnf_subscription_data["callbackUri"],
+                                              data=json.dumps(expect_onboarding_notification),
                                               headers={'Connection': 'close',
                                                        'content-type': 'application/json',
                                                        'accept': 'application/json'},
@@ -355,25 +354,26 @@ class TestNfPackage(TestCase):
             'timeStamp': "2019-02-16 14:41:16",
             'vnfPkgId': "1234",
             'vnfdId': "b1bb0ce7-2222-4fa7-95ed-4840d70a1177",
-            'changeType': const.PKG_CHANGE_TYPE.PKG_DELETE,
-            'operationalState': None,
-            "subscriptionId": uuid_subscriptid,
             '_links': {
-                'subscription': {
-                    'href': 'http://%s:%s/%s%s' % (pub_config.MSB_SERVICE_IP,
-                                                   pub_config.MSB_SERVICE_PORT,
-                                                   const.VNFPKG_SUBSCRIPTION_ROOT_URI,
-                                                   uuid_subscriptid)},
                 'vnfPackage': {
                     'href': 'http://%s:%s/%s/vnf_packages/%s' % (pub_config.MSB_SERVICE_IP,
                                                                  pub_config.MSB_SERVICE_PORT,
                                                                  const.PKG_URL_PREFIX,
-                                                                 uuid_csarid)
-                }
-            }
+                                                                 uuid_csarid)},
+                    'subscription': {
+                        'href': 'http://%s:%s/%s%s' % (pub_config.MSB_SERVICE_IP,
+                                                       pub_config.MSB_SERVICE_PORT,
+                                                       const.VNFPKG_SUBSCRIPTION_ROOT_URI,
+                                                       uuid_subscriptid)}
+
+            },
+            'changeType': const.PKG_CHANGE_TYPE.PKG_DELETE,
+            'operationalState': None,
+            "subscriptionId": uuid_subscriptid
         }
         NfPkgDeleteThread(csar_id=uuid_csarid, job_id="5").delete_csar()
-        mock_requests_post.assert_called_with(vnf_subscription_data["callbackUri"], data=expect_deleted_notification,
+        mock_requests_post.assert_called_with(vnf_subscription_data["callbackUri"],
+                                              data=json.dumps(expect_deleted_notification),
                                               headers={'Connection': 'close',
                                                        'content-type': 'application/json',
                                                        'accept': 'application/json'},