+
+ @mock.patch.object(CreateNSService, "do_biz")
+ def test_create_ns_empty_data(self, mock_do_biz):
+ mock_do_biz.side_effect = Exception("Exception in CreateNS.")
+ data = {
+ 'nsdId': 'nsdId'
+ }
+ response = self.client.post("/api/nslcm/v1/ns", data=data)
+ self.assertEqual(response.data["error"], "Exception in CreateNS.")
+ self.assertEqual(response.status_code, status.HTTP_500_INTERNAL_SERVER_ERROR)
+ self.assertIn("error", response.data)
+
+ @mock.patch.object(CreateNSService, "do_biz")
+ def test_create_ns_non_existing_nsd(self, mock_do_biz):
+ mock_do_biz.side_effect = NSLCMException("nsd not exists.")
+ new_nsd_id = '1'
+ data = {
+ 'csarId': new_nsd_id,
+ 'nsName': 'ns',
+ 'nsDescription': 'description',
+ 'nsdId': 'nsdId'
+ }
+ response = self.client.post("/api/nslcm/v1/ns", data=data)
+ self.assertEqual(response.data["error"], "nsd not exists.")
+ self.assertEqual(response.status_code, status.HTTP_500_INTERNAL_SERVER_ERROR)
+ self.assertIn("error", response.data)
+
+ @mock.patch.object(restcall, 'call_req')
+ def test_create_ns_when_fail_to_get_nsd(self, mock_call_req):
+ mock_call_req.return_value = [1, "Failed to get nsd.", '500']
+ data = {
+ 'csarId': '1',
+ 'nsName': 'ns',
+ 'nsDescription': 'description'
+ }
+ response = self.client.post("/api/nslcm/v1/ns", data=data)
+ self.assertEqual(response.status_code, status.HTTP_500_INTERNAL_SERVER_ERROR)
+ self.assertIn("error", response.data)
+
+ @mock.patch.object(restcall, 'call_req')
+ def test_create_ns_when_ns_name_exist(self, mock_call_req):
+ nspackage_info = json.JSONEncoder().encode({
+ "csarId": self.ns_package_id,
+ "packageInfo": {}
+ })
+ mock_call_req.return_value = [0, nspackage_info, '200']
+ NSInstModel(id="1", name="ns1").save()
+ data = {
+ 'csarId': '1',
+ 'nsName': 'ns1',
+ 'nsDescription': 'description'
+ }
+ response = self.client.post("/api/nslcm/v1/ns", data=data)
+ self.assertEqual(response.status_code, status.HTTP_500_INTERNAL_SERVER_ERROR)
+ self.assertIn("error", response.data)