X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=tests%2Funit%2Ftest_ocloud.py;fp=tests%2Funit%2Ftest_ocloud.py;h=95dd372a51495c7aeb32ef7bfbe06cec7744bcb6;hb=02b85e27680e1139bc8e1930af5449a26527b4de;hp=13fc43649362f176200feb5fcd6a495240a62d48;hpb=065d02be3f56ee7716433d3ad73fec9f710cd406;p=pti%2Fo2.git diff --git a/tests/unit/test_ocloud.py b/tests/unit/test_ocloud.py index 13fc436..95dd372 100644 --- a/tests/unit/test_ocloud.py +++ b/tests/unit/test_ocloud.py @@ -94,6 +94,14 @@ def test_new_subscription(): subscription1.subscriptionId == subscription_id1 +def test_new_registration(): + registration_id1 = str(uuid.uuid4()) + registration1 = subscription_obj.Registration( + registration_id1, "https://callback/uri/write/here") + assert registration_id1 is not None and\ + registration1.registrationId == registration_id1 + + def test_view_olcouds(mock_uow): session, uow = mock_uow @@ -311,6 +319,44 @@ def test_view_subscription_one(mock_uow): "subscriptionId")) == subscription_id1 +def test_view_registrations(mock_uow): + session, uow = mock_uow + + registration_id1 = str(uuid.uuid4()) + reg1 = MagicMock() + reg1.serialize.return_value = { + "registrationId": registration_id1, + } + session.return_value.query.return_value = [reg1] + + registration_list = ocloud_view.registrations(uow) + assert str(registration_list[0].get( + "registrationId")) == registration_id1 + + +def test_view_registration_one(mock_uow): + session, uow = mock_uow + + registration_id1 = str(uuid.uuid4()) + session.return_value.query.return_value.filter_by.return_value.first.\ + return_value.serialize.return_value = None + + # Query return None + registration_res = ocloud_view.registration_one( + registration_id1, uow) + assert registration_res is None + + session.return_value.query.return_value.filter_by.return_value.first.\ + return_value.serialize.return_value = { + "registrationId": registration_id1, + } + + registration_res = ocloud_view.registration_one( + registration_id1, uow) + assert str(registration_res.get( + "registrationId")) == registration_id1 + + def test_flask_get_list(mock_flask_uow): session, app = mock_flask_uow session.query.return_value = [] @@ -336,6 +382,9 @@ def test_flask_get_list(mock_flask_uow): resp = client.get(apibase+"/subscriptions") assert resp.get_data() == b'[]\n' + resp = client.get(apibase+"/registrations") + assert resp.get_data() == b'[]\n' + def test_flask_get_one(mock_flask_uow): session, app = mock_flask_uow @@ -372,6 +421,10 @@ def test_flask_get_one(mock_flask_uow): resp = client.get(apibase+"/subscriptions/"+subscription_id1) assert resp.status_code == 404 + registration_id1 = str(uuid.uuid4()) + resp = client.get(apibase+"/registrations/"+registration_id1) + assert resp.status_code == 404 + def test_flask_post(mock_flask_uow): session, app = mock_flask_uow @@ -389,6 +442,13 @@ def test_flask_post(mock_flask_uow): assert resp.status_code == 201 assert 'subscriptionId' in resp.get_json() + reg_callback = 'http://registration/callback/url' + resp = client.post(apibase+'/registrations', json={ + 'callback': reg_callback, + }) + assert resp.status_code == 201 + assert 'registrationId' in resp.get_json() + def test_flask_delete(mock_flask_uow): session, app = mock_flask_uow @@ -401,6 +461,10 @@ def test_flask_delete(mock_flask_uow): resp = client.delete(apibase+"/subscriptions/"+subscription_id1) assert resp.status_code == 204 + registration_id1 = str(uuid.uuid4()) + resp = client.delete(apibase+"/registrations/"+registration_id1) + assert resp.status_code == 204 + def test_flask_not_allowed(mock_flask_uow): _, app = mock_flask_uow @@ -518,3 +582,22 @@ def test_flask_not_allowed(mock_flask_uow): assert resp.status == '405 METHOD NOT ALLOWED' resp = client.patch(uri) assert resp.status == '405 METHOD NOT ALLOWED' + + # Testing registrations not support method + ########################## + uri = apibase + "/registrations" + resp = client.put(uri) + assert resp.status == '405 METHOD NOT ALLOWED' + resp = client.patch(uri) + assert resp.status == '405 METHOD NOT ALLOWED' + resp = client.delete(uri) + assert resp.status == '405 METHOD NOT ALLOWED' + + subscription_id1 = str(uuid.uuid4()) + uri = apibase + "/registrations/" + subscription_id1 + resp = client.post(uri) + assert resp.status == '405 METHOD NOT ALLOWED' + resp = client.put(uri) + assert resp.status == '405 METHOD NOT ALLOWED' + resp = client.patch(uri) + assert resp.status == '405 METHOD NOT ALLOWED'