summaryrefslogtreecommitdiffstats
path: root/test/test_api_validation.py
blob: 5af81e6ace02ce913afbda4f36ed9cc4e10ee3c7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
import json
import unittest

from osdf.models.api.placementRequest import PlacementAPI
from osdf.models.api.placementResponse import PlacementResponse
from schematics.exceptions import ModelValidationError


class TestReqValidation(unittest.TestCase):

    def test_req_validation(self):
        req_file = "./test/placement-tests/request.json"
        req_json = json.loads(open(req_file).read())
        self.assertEqual(PlacementAPI(req_json).validate(), None)

    def test_req_failure(self):
        req_json = {}
        self.assertRaises(ModelValidationError, lambda: PlacementAPI(req_json).validate())


class TestResponseValidation(unittest.TestCase):

    def test_invalid_response(self):
        resp_json = {}
        self.assertRaises(ModelValidationError, lambda: PlacementResponse(resp_json).validate())


if __name__ == "__main__":
    unittest.main()