"to %s" % self.callback_uri)
try:
response = requests.get(self.callback_uri, timeout=2)
- if response.status_code not in (status.HTTP_204_NO_CONTENT, status.HTTP_200_OK):
- raise VnfPkgSubscriptionException("callbackUri %s returns %s status "
- "code." % (self.callback_uri, response.status_code))
+ if response.status_code != status.HTTP_204_NO_CONTENT:
+ raise VnfPkgSubscriptionException(
+ "callbackUri %s returns %s status code." % (
+ self.callback_uri,
+ response.status_code
+ )
+ )
except Exception:
- raise VnfPkgSubscriptionException("callbackUri %s didn't return 204 or 200 status"
- "code." % self.callback_uri)
+ raise VnfPkgSubscriptionException(
+ "callbackUri %s didn't return 204 status code." % self.callback_uri
+ )
def do_biz(self):
self.subscription_id = str(uuid.uuid4())
self.check_valid_auth_info()
self.check_valid()
self.save_db()
- subscription = VnfPkgSubscriptionModel.objects.get(subscription_id=self.subscription_id)
+ subscription = VnfPkgSubscriptionModel.objects.get(
+ subscription_id=self.subscription_id
+ )
if subscription:
return subscription.toDict()
self.assertEqual(status.HTTP_200_OK, response.status_code, response.content)
resp_data = json.loads(response.content)
self.assertEqual({"status": "active"}, resp_data)
+
+
+class CallbackSampleTest(unittest.TestCase):
+ def setUp(self):
+ self.client = Client()
+
+ def tearDown(self):
+ pass
+
+ def test_callback(self):
+ response = self.client.get("/api/catalog/v1/callback_sample")
+ self.assertEqual(status.HTTP_204_NO_CONTENT, response.status_code, response.content)
urlpatterns = [
url(r'^api/catalog/v1/mandb/(?P<modelName>[a-zA-Z\-]+)$', views.TablesList.as_view()),
- url(r'^samples/$', views.SampleList.as_view()), ]
+ url(r'^api/catalog/v1/callback_sample$', views.CallbackSample.as_view()),
+ url(r'^samples/$', views.SampleList.as_view())
+]
return Response({"status": "active"})
+class CallbackSample(APIView):
+ """
+ Callback Sample.
+ """
+ def get(self, request, format=None):
+ logger.debug("Callback Sample")
+ return Response(data={}, status=status.HTTP_204_NO_CONTENT)
+
+
class TablesList(APIView):
def delete(self, request, modelName):
logger.debug("Start delete model %s", modelName)