|
3 | 3 | import pytest
|
4 | 4 |
|
5 | 5 | from openapi_core.testing.datatypes import ResultMock
|
6 |
| -from openapi_core.testing.factories import FactoryClassMock |
7 |
| -from openapi_core.validation.request.shortcuts import spec_validate_body |
8 |
| -from openapi_core.validation.request.shortcuts import spec_validate_parameters |
| 6 | +from openapi_core.validation.request.shortcuts import spec_validate_request |
9 | 7 |
|
10 | 8 |
|
11 |
| -class TestSpecValidateParameters: |
| 9 | +class TestValidateRequest: |
12 | 10 | @mock.patch(
|
13 |
| - "openapi_core.validation.request.shortcuts.RequestParametersValidator." |
14 |
| - "validate" |
| 11 | + "openapi_core.validation.request.shortcuts.RequestValidator.validate" |
15 | 12 | )
|
16 |
| - def test_no_request_factory(self, mock_validate): |
| 13 | + def test_validator_valid(self, mock_validate): |
17 | 14 | spec = mock.sentinel.spec
|
18 | 15 | request = mock.sentinel.request
|
19 | 16 | parameters = mock.sentinel.parameters
|
20 |
| - mock_validate.return_value = ResultMock(parameters=parameters) |
| 17 | + validation_result = ResultMock(parameters=parameters) |
| 18 | + mock_validate.return_value = validation_result |
21 | 19 |
|
22 |
| - result = spec_validate_parameters(spec, request) |
| 20 | + result = spec_validate_request(spec, request) |
23 | 21 |
|
24 |
| - assert result == parameters |
| 22 | + assert result == validation_result |
25 | 23 | mock_validate.aasert_called_once_with(request)
|
26 | 24 |
|
27 | 25 | @mock.patch(
|
28 |
| - "openapi_core.validation.request.shortcuts.RequestParametersValidator." |
29 |
| - "validate" |
| 26 | + "openapi_core.validation.request.shortcuts.RequestValidator.validate" |
30 | 27 | )
|
31 |
| - def test_no_request_factory_error(self, mock_validate): |
| 28 | + def test_validator_error(self, mock_validate): |
32 | 29 | spec = mock.sentinel.spec
|
33 | 30 | request = mock.sentinel.request
|
34 | 31 | mock_validate.return_value = ResultMock(error_to_raise=ValueError)
|
35 | 32 |
|
36 | 33 | with pytest.raises(ValueError):
|
37 |
| - spec_validate_parameters(spec, request) |
| 34 | + spec_validate_request(spec, request) |
38 | 35 |
|
39 | 36 | mock_validate.aasert_called_once_with(request)
|
40 |
| - |
41 |
| - @mock.patch( |
42 |
| - "openapi_core.validation.request.shortcuts.RequestParametersValidator." |
43 |
| - "validate" |
44 |
| - ) |
45 |
| - def test_request_factory(self, mock_validate): |
46 |
| - spec = mock.sentinel.spec |
47 |
| - request = mock.sentinel.request |
48 |
| - parameters = mock.sentinel.parameters |
49 |
| - mock_validate.return_value = ResultMock(parameters=parameters) |
50 |
| - request_factory = FactoryClassMock |
51 |
| - |
52 |
| - result = spec_validate_parameters(spec, request, request_factory) |
53 |
| - |
54 |
| - assert result == parameters |
55 |
| - mock_validate.assert_called_once_with( |
56 |
| - FactoryClassMock(request), |
57 |
| - ) |
58 |
| - |
59 |
| - @mock.patch( |
60 |
| - "openapi_core.validation.request.shortcuts.RequestParametersValidator." |
61 |
| - "validate" |
62 |
| - ) |
63 |
| - def test_request_factory_error(self, mock_validate): |
64 |
| - spec = mock.sentinel.spec |
65 |
| - request = mock.sentinel.request |
66 |
| - mock_validate.return_value = ResultMock(error_to_raise=ValueError) |
67 |
| - request_factory = FactoryClassMock |
68 |
| - |
69 |
| - with pytest.raises(ValueError): |
70 |
| - spec_validate_parameters(spec, request, request_factory) |
71 |
| - |
72 |
| - mock_validate.assert_called_once_with( |
73 |
| - FactoryClassMock(request), |
74 |
| - ) |
75 |
| - |
76 |
| - |
77 |
| -class TestSpecValidateBody: |
78 |
| - @mock.patch( |
79 |
| - "openapi_core.validation.request.shortcuts.RequestBodyValidator." |
80 |
| - "validate" |
81 |
| - ) |
82 |
| - def test_no_request_factory(self, mock_validate): |
83 |
| - spec = mock.sentinel.spec |
84 |
| - request = mock.sentinel.request |
85 |
| - body = mock.sentinel.body |
86 |
| - mock_validate.return_value = ResultMock(body=body) |
87 |
| - |
88 |
| - result = spec_validate_body(spec, request) |
89 |
| - |
90 |
| - assert result == body |
91 |
| - mock_validate.aasert_called_once_with(request) |
92 |
| - |
93 |
| - @mock.patch( |
94 |
| - "openapi_core.validation.request.shortcuts.RequestBodyValidator." |
95 |
| - "validate" |
96 |
| - ) |
97 |
| - def test_no_request_factory_error(self, mock_validate): |
98 |
| - spec = mock.sentinel.spec |
99 |
| - request = mock.sentinel.request |
100 |
| - mock_validate.return_value = ResultMock(error_to_raise=ValueError) |
101 |
| - |
102 |
| - with pytest.raises(ValueError): |
103 |
| - spec_validate_body(spec, request) |
104 |
| - |
105 |
| - mock_validate.aasert_called_once_with(request) |
106 |
| - |
107 |
| - @mock.patch( |
108 |
| - "openapi_core.validation.request.shortcuts.RequestBodyValidator." |
109 |
| - "validate" |
110 |
| - ) |
111 |
| - def test_request_factory(self, mock_validate): |
112 |
| - spec = mock.sentinel.spec |
113 |
| - request = mock.sentinel.request |
114 |
| - body = mock.sentinel.body |
115 |
| - mock_validate.return_value = ResultMock(body=body) |
116 |
| - request_factory = FactoryClassMock |
117 |
| - |
118 |
| - result = spec_validate_body(spec, request, request_factory) |
119 |
| - |
120 |
| - assert result == body |
121 |
| - mock_validate.assert_called_once_with( |
122 |
| - FactoryClassMock(request), |
123 |
| - ) |
124 |
| - |
125 |
| - @mock.patch( |
126 |
| - "openapi_core.validation.request.shortcuts.RequestBodyValidator." |
127 |
| - "validate" |
128 |
| - ) |
129 |
| - def test_request_factory_error(self, mock_validate): |
130 |
| - spec = mock.sentinel.spec |
131 |
| - request = mock.sentinel.request |
132 |
| - mock_validate.return_value = ResultMock(error_to_raise=ValueError) |
133 |
| - request_factory = FactoryClassMock |
134 |
| - |
135 |
| - with pytest.raises(ValueError): |
136 |
| - spec_validate_body(spec, request, request_factory) |
137 |
| - |
138 |
| - mock_validate.assert_called_once_with( |
139 |
| - FactoryClassMock(request), |
140 |
| - ) |
0 commit comments