Add test to verify bad MOI handling by the service 93/106093/2
authorBartek Grzybowski <b.grzybowski@partner.samsung.com>
Thu, 16 Apr 2020 11:04:12 +0000 (04:04 -0700)
committerBartek Grzybowski <b.grzybowski@partner.samsung.com>
Thu, 16 Apr 2020 11:36:42 +0000 (11:36 +0000)
Functional test for verifying that the service handles
bad MOI class in URI string properly and returns appropriate
response to the client.

Change-Id: I606aaba5c400f81e8142a34f250bc249251feaf7
Issue-ID: INT-1529
Signed-off-by: Bartek Grzybowski <b.grzybowski@partner.samsung.com>
test/mocks/prov-mns-provider/src/tests/common.py
test/mocks/prov-mns-provider/src/tests/test_invalid_requests.py

index 2ffe8ac..a78e9f5 100644 (file)
@@ -22,4 +22,9 @@ URI_GET_STRING = URI_BASE_STRING + '?scope=BASE_ONLY&filter=' + MOI_CLASS + \
                  '&fields=gNBId&fields=gNBIdLength'
 URI_PATCH_STRING = URI_BASE_STRING + '?scope=BASE_ONLY&filter=' + MOI_CLASS
 URI_DELETE_STRING = URI_PATCH_STRING
+BAD_CLASS_URI_BASE_STRING = URI_SCHEMA + '://' + ProvMnSProvider.ipAddress + \
+                            ':' + str(ProvMnSProvider.portNumber) + \
+                            ProvMnSProvider.prefix + '/' + 'invalidMoiClass' + \
+                            '/' + MOI_ID
 UNAUTHORIZED_MSG="not Authorized"
+INVALID_CLASS_MSG = "MOI class not support"
index 660f26c..08e0e32 100644 (file)
@@ -22,3 +22,28 @@ def test_unauthorized():
                           auth=INVALID_AUTH_STRING)
     assert req.status_code == requests.codes.unauthorized
     assert UNAUTHORIZED_MSG in req.text
+
+def test_bad_moi_class():
+    '''Check service returns proper
+    http code and error msg if MOI class
+    is invalid'''
+
+    req = requests.get('{0}'.format(BAD_CLASS_URI_BASE_STRING),
+                       auth=AUTH_STRING)
+    assert req.status_code == requests.codes.not_acceptable
+    assert INVALID_CLASS_MSG in req.text
+
+    req = requests.put('{0}'.format(BAD_CLASS_URI_BASE_STRING),
+                       auth=AUTH_STRING, json=MOI_DATA_TMPL)
+    assert req.status_code == requests.codes.not_acceptable
+    assert INVALID_CLASS_MSG in req.text
+
+    req = requests.patch('{0}'.format(BAD_CLASS_URI_BASE_STRING),
+                         auth=AUTH_STRING, json=MOI_DATA_PATCH)
+    assert req.status_code == requests.codes.not_acceptable
+    assert INVALID_CLASS_MSG in req.text
+
+    req = requests.delete('{0}'.format(BAD_CLASS_URI_BASE_STRING),
+                          auth=AUTH_STRING)
+    assert req.status_code == requests.codes.not_acceptable
+    assert INVALID_CLASS_MSG in req.text