mirror of
https://github.com/creyD/creyPY.git
synced 2026-04-12 19:30:30 +02:00
feat: Added tests
This commit is contained in:
41
test.py
Normal file
41
test.py
Normal file
@@ -0,0 +1,41 @@
|
||||
import unittest
|
||||
|
||||
from fastapi.routing import APIRoute
|
||||
|
||||
from creyPY.fastapi.app import generate_unique_id
|
||||
|
||||
|
||||
class TestMyFunction(unittest.TestCase):
|
||||
def test_generate_unique_id(self):
|
||||
# Test case 1: Route with no path parameters and GET method
|
||||
route1 = APIRoute(path="/users", methods={"GET"}, endpoint=lambda: None)
|
||||
assert generate_unique_id(route1) == "users_list"
|
||||
|
||||
# Test case 2: Route with path parameters and POST method
|
||||
route2 = APIRoute(path="/users/{user_id}", methods={"POST"}, endpoint=lambda: None)
|
||||
assert generate_unique_id(route2) == "users_post"
|
||||
|
||||
# Test case 3: Route with path parameters and multiple methods
|
||||
route3 = APIRoute(path="/users/{user_id}", methods={"GET", "PUT"}, endpoint=lambda: None)
|
||||
result = generate_unique_id(route3)
|
||||
assert result == "users_get" or result == "users_put"
|
||||
|
||||
# Test case 4: Route with special characters in path
|
||||
route4 = APIRoute(
|
||||
path="/users/{user_id}/posts/{post_id}", methods={"DELETE"}, endpoint=lambda: None
|
||||
)
|
||||
assert generate_unique_id(route4) == "users_posts_delete"
|
||||
|
||||
# Test case 5: Route with multiple path parameters and PATCH method
|
||||
route5 = APIRoute(
|
||||
path="/users/{user_id}/posts/{post_id}", methods={"PATCH"}, endpoint=lambda: None
|
||||
)
|
||||
assert generate_unique_id(route5) == "users_posts_patch"
|
||||
|
||||
# Test case 6: Route with no path parameters and PUT method
|
||||
route6 = APIRoute(path="/users", methods={"PUT"}, endpoint=lambda: None)
|
||||
assert generate_unique_id(route6) == "users_put"
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
unittest.main()
|
||||
Reference in New Issue
Block a user