mirror of
https://github.com/shadoll/scatcher.git
synced 2025-12-20 02:26:03 +00:00
Fix formatting in request_data.py and add tests for less data
This commit is contained in:
@@ -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 = {}
|
||||||
|
|||||||
@@ -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()
|
||||||
|
|||||||
Reference in New Issue
Block a user