def test_respond_delete(self, func, session, request, cipher, user):
     request.method = "DELETE"
     request.headers = {'x-opp-phrase': "123"}
     cipher.return_value = "OK"
     handler = bh.BaseResponseHandler(request, user, session)
     handler.respond()
     self._check_called(func)
 def test_respond_bad_verb(self, session, request, cipher, user):
     request.method = "BAD"
     cipher.return_value = "OK"
     handler = bh.BaseResponseHandler(request, user, session)
     self.assertRaisesWithMsg("Method not supported!",
                              handler.respond,
                              require_phrase=False)
Beispiel #3
0
 def test_respond_missing_phrase(self, request):
     request.headers = {}
     handler = bh.BaseResponseHandler(request)
     self.assertEqual(handler.respond(), {
         'result': "error",
         'message': "Passphrase header missing!"
     })
 def test_check_payload_object_not_list(self, request):
     payload = {'obj': [1, 2, 3]}
     request.get_json.return_value = payload
     handler = bh.BaseResponseHandler(request, None, None)
     check_dict = [{'name': "obj", 'is_list': False, 'required': True}]
     self.assertRaisesWithMsg("'obj' object should not be in list form!",
                              handler._check_payload, check_dict)
Beispiel #5
0
 def test_check_payload_missing(self, request):
     request.get_json.return_value = {'key': "value"}
     handler = bh.BaseResponseHandler(request)
     payload, error = handler._check_payload(expect_list=True)
     self.assertEqual(payload, None)
     self.assertEqual(error, {
         'result': "error",
         'message': "Payload missing!"
     })
Beispiel #6
0
 def test_check_payload_not_obj(self, request):
     request.get_json.return_value = {'payload': ["blah", "blah"]}
     handler = bh.BaseResponseHandler(request)
     payload, error = handler._check_payload(expect_list=False)
     self.assertEqual(payload, None)
     self.assertEqual(error, {
         'result': "error",
         'message': "Payload should not be in list form!"
     })
Beispiel #7
0
 def test_check_payload_empty(self, request):
     request.get_json.return_value = {'payload': ""}
     handler = bh.BaseResponseHandler(request)
     payload, error = handler._check_payload(expect_list=True)
     self.assertEqual(payload, None)
     self.assertEqual(error, {
         'result': "error",
         'message': "Empty payload!"
     })
 def test_check_payload_object_missing_required(self, request):
     payload = {'obj': {'name': "value"}}
     request.get_json.return_value = payload
     handler = bh.BaseResponseHandler(request, None, None)
     check_dict = [{
         'name': "obj",
         'is_list': False,
         'required': True
     }, {
         'name': "list_obj",
         'is_list': True,
         'required': True
     }]
     self.assertRaisesWithMsg(
         "Required payload object "
         "'list_obj' is missing!", handler._check_payload, check_dict)
 def test_check_payload_objects(self, request):
     payload = {'obj': {'name': "value"}, 'list_obj': [1, 2, 3]}
     request.get_json.return_value = payload
     handler = bh.BaseResponseHandler(request, None, None)
     check_dict = [{
         'name': "obj",
         'is_list': False,
         'required': True
     }, {
         'name': "list_obj",
         'is_list': True,
         'required': False
     }]
     payload_objects = handler._check_payload(check_dict)
     self.assertNotEqual(payload_objects, None)
     self.assertEqual(len(payload_objects), 2)
     obj, list_obj = payload_objects
     self.assertEqual(obj['name'], "value")
     self.assertEqual(len(list_obj), 3)
Beispiel #10
0
 def test_check_payload_object_missing_not_required(self, request):
     payload = {'obj': {'name': "value"}}
     request.get_json.return_value = payload
     handler = bh.BaseResponseHandler(request, None, None)
     check_dict = [{
         'name': "obj",
         'is_list': False,
         'required': True
     }, {
         'name': "list_obj",
         'is_list': True,
         'required': False
     }, {
         'name': "obj2",
         'is_list': False,
         'required': False
     }]
     payload_objects = handler._check_payload(check_dict)
     self.assertNotEqual(payload_objects, None)
     self.assertEqual(len(payload_objects), 3)
     self.assertEqual(payload_objects[0]['name'], "value")
     self.assertEqual(payload_objects[1], [])
     self.assertEqual(payload_objects[2], {})
Beispiel #11
0
 def test_check_payload_none(self, request):
     request.get_json.return_value = None
     handler = bh.BaseResponseHandler(request, None, None)
     self.assertRaisesWithMsg("Missing payload!", handler._check_payload,
                              True)
Beispiel #12
0
 def test_check_payload_empty_ok(self, request):
     request.get_json.return_value = {}
     handler = bh.BaseResponseHandler(request, None, None)
     payload = handler._check_payload()
     self.assertEqual(payload, [])
Beispiel #13
0
 def test_respond_bad_phrase(self, request, cipher, user):
     request.headers = {'x-opp-phrase': "123"}
     cipher.return_value = "NOTOK"
     handler = bh.BaseResponseHandler(request, user, None)
     self.assertRaisesWithMsg("Incorrect passphrase supplied!",
                              handler.respond)
Beispiel #14
0
 def test_respond_bad_verb(self, mock_get_session, request):
     request.method = "BAD"
     handler = bh.BaseResponseHandler(request)
     response = handler.respond(require_phrase=False)
     expected = {'result': "error", 'message': "Method not supported!"}
     self.assertEqual(response, expected)
Beispiel #15
0
 def test_respond_get(self, func, get_session, request):
     request.method = "GET"
     request.headers = {'x-opp-phrase': "123"}
     handler = bh.BaseResponseHandler(request)
     handler.respond()
     self._check_called(func, "123")
Beispiel #16
0
 def test_check_payload_obj(self, request):
     request.get_json.return_value = {'payload': {"blah": "blah"}}
     handler = bh.BaseResponseHandler(request)
     payload, error = handler._check_payload(expect_list=False)
     self.assertNotEqual(payload, None)
     self.assertIsNone(error)
Beispiel #17
0
 def test_respond_missing_phrase(self, request):
     request.headers = {}
     handler = bh.BaseResponseHandler(request, None, None)
     self.assertRaisesWithMsg("Passphrase header missing!", handler.respond)
Beispiel #18
0
 def test_respond_delete(self, func, mock_get_session, request):
     request.method = "DELETE"
     request.headers = {'x-opp-phrase': "123"}
     handler = bh.BaseResponseHandler(request)
     handler.respond()
     self._check_called(func)