Fix formatting in request_data.py and add tests for less data

This commit is contained in:
sHa
2024-03-22 10:54:53 +02:00
parent c0ff939e04
commit 5923287924
2 changed files with 41 additions and 2 deletions

View File

@@ -4,9 +4,9 @@ from schema.methods import Methods
class RequestData(BaseModel): class RequestData(BaseModel):
method: Methods = Methods.GET method: Methods = Methods.GET
data: dict|None = None data: dict | None = None
params: dict = {} params: dict = {}
form: dict|None = None form: dict | None = None
url: str url: str
headers: dict = {} headers: dict = {}
cookies: dict = {} cookies: dict = {}

View File

@@ -17,6 +17,17 @@ class TestRequestDataSchema(unittest.TestCase):
"http_version": "HTTP/1.1", "http_version": "HTTP/1.1",
"time": "2024-01-01 12:00:00", "time": "2024-01-01 12:00:00",
} }
self.request_data_less: dict[Any, Any] = {
"method": "GET",
"data": None,
"params": {},
"form": None,
"url": "https://example.com",
"headers": {},
"cookies": {},
"http_version": "HTTP/1.1",
"time": "2024-01-01 12:00:00",
}
def test_request_data_creation(self): def test_request_data_creation(self):
request_data = RequestData(**self.request_data) request_data = RequestData(**self.request_data)
@@ -30,6 +41,34 @@ class TestRequestDataSchema(unittest.TestCase):
self.assertEqual(request_data.form, self.request_data["form"]) self.assertEqual(request_data.form, self.request_data["form"])
self.assertEqual(request_data.params, self.request_data["params"]) self.assertEqual(request_data.params, self.request_data["params"])
def test_request_data_creation_less_data(self):
request_data = RequestData(**self.request_data_less)
self.assertEqual(request_data.data, None)
self.assertEqual(request_data.method, Methods.GET)
self.assertEqual(request_data.url, self.request_data_less["url"])
self.assertEqual(request_data.headers, self.request_data_less["headers"])
self.assertEqual(request_data.time, self.request_data_less["time"])
self.assertEqual(request_data.http_version, "HTTP/1.1")
self.assertEqual(request_data.cookies, self.request_data_less["cookies"])
self.assertEqual(request_data.form, None)
self.assertEqual(request_data.params, self.request_data_less["params"])
def test_request_data_creation_invalid_method(self):
with self.assertRaises(ValueError):
RequestData(**{**self.request_data, "method": "INVALID"})
with self.assertRaises(ValueError):
RequestData(**{**self.request_data, "method": 123})
with self.assertRaises(ValueError):
RequestData(**{**self.request_data, "method": None})
def test_request_data_creation_invalid_headers(self):
with self.assertRaises(ValueError):
RequestData(**{**self.request_data, "headers": "INVALID"})
with self.assertRaises(ValueError):
RequestData(**{**self.request_data, "headers": 123})
with self.assertRaises(ValueError):
RequestData(**{**self.request_data, "headers": None})
if __name__ == "__main__": if __name__ == "__main__":
unittest.main() unittest.main()