Skip to content
This repository was archived by the owner on Apr 2, 2025. It is now read-only.

Commit e82101f

Browse files
author
Phil Varner
authored
in backend methods, make Request the last parameter in all methods (#137)
* in backend methods, make Request the last parameter in all methods
1 parent fb695aa commit e82101f

File tree

5 files changed

+16
-12
lines changed

5 files changed

+16
-12
lines changed

src/stapi_fastapi/backends/product_backend.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
from stapi_fastapi.routers.product_router import ProductRouter
1212

1313
SearchOpportunities = Callable[
14-
[ProductRouter, OpportunityRequest, Request, str | None, int],
14+
[ProductRouter, OpportunityRequest, str | None, int, Request],
1515
Coroutine[Any, Any, ResultE[tuple[list[Opportunity], Maybe[str]]]],
1616
]
1717
"""
@@ -21,9 +21,9 @@
2121
Args:
2222
product_router (ProductRouter): The product router.
2323
search (OpportunityRequest): The search parameters.
24-
request (Request): FastAPI's Request object.
2524
next (str | None): A pagination token.
2625
limit (int): The maximum number of opportunities to return in a page.
26+
request (Request): FastAPI's Request object.
2727
2828
Returns:
2929
A tuple containing a list of opportunities and a pagination token.

src/stapi_fastapi/backends/root_backend.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,16 +10,16 @@
1010
)
1111

1212
GetOrders = Callable[
13-
[Request, str | None, int],
13+
[str | None, int, Request],
1414
Coroutine[Any, Any, ResultE[tuple[list[Order], Maybe[str]]]],
1515
]
1616
"""
1717
Type alias for an async function that returns a list of existing Orders.
1818
1919
Args:
20-
request (Request): FastAPI's Request object.
2120
next (str | None): A pagination token.
2221
limit (int): The maximum number of orders to return in a page.
22+
request (Request): FastAPI's Request object.
2323
2424
Returns:
2525
A tuple containing a list of orders and a pagination token.
@@ -49,17 +49,17 @@
4949

5050

5151
GetOrderStatuses = Callable[
52-
[str, Request, str | None, int],
52+
[str, str | None, int, Request],
5353
Coroutine[Any, Any, ResultE[tuple[list[T], Maybe[str]]]],
5454
]
5555
"""
5656
Type alias for an async function that gets statuses for the order with `order_id`.
5757
5858
Args:
5959
order_id (str): The order ID.
60-
request (Request): FastAPI's Request object.
6160
next (str | None): A pagination token.
6261
limit (int): The maximum number of statuses to return in a page.
62+
request (Request): FastAPI's Request object.
6363
6464
Returns:
6565
A tuple containing a list of order statuses and a pagination token.

src/stapi_fastapi/routers/product_router.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -173,7 +173,11 @@ async def search_opportunities(
173173
"""
174174
links: list[Link] = []
175175
match await self.product._search_opportunities(
176-
self, search, request, next, limit
176+
self,
177+
search,
178+
next,
179+
limit,
180+
request,
177181
):
178182
case Success((features, Some(pagination_token))):
179183
links.append(self.order_link(request))

src/stapi_fastapi/routers/root_router.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -181,7 +181,7 @@ async def get_orders(
181181
self, request: Request, next: str | None = None, limit: int = 10
182182
) -> OrderCollection:
183183
links: list[Link] = []
184-
match await self._get_orders(request, next, limit):
184+
match await self._get_orders(next, limit, request):
185185
case Success((orders, Some(pagination_token))):
186186
for order in orders:
187187
order.links.append(self.order_link(request, order))
@@ -235,7 +235,7 @@ async def get_order_statuses(
235235
limit: int = 10,
236236
) -> OrderStatuses:
237237
links: list[Link] = []
238-
match await self._get_order_statuses(order_id, request, next, limit):
238+
match await self._get_order_statuses(order_id, next, limit, request):
239239
case Success((statuses, Some(pagination_token))):
240240
links.append(self.order_statuses_link(request, order_id))
241241
links.append(self.pagination_link(request, pagination_token))

tests/backends.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121

2222

2323
async def mock_get_orders(
24-
request: Request, next: str | None, limit: int
24+
next: str | None, limit: int, request: Request
2525
) -> ResultE[tuple[list[Order], Maybe[str]]]:
2626
"""
2727
Return orders from backend. Handle pagination/limit if applicable
@@ -55,7 +55,7 @@ async def mock_get_order(order_id: str, request: Request) -> ResultE[Maybe[Order
5555

5656

5757
async def mock_get_order_statuses(
58-
order_id: str, request: Request, next: str | None, limit: int
58+
order_id: str, next: str | None, limit: int, request: Request
5959
) -> ResultE[tuple[list[OrderStatus], Maybe[str]]]:
6060
try:
6161
start = 0
@@ -77,9 +77,9 @@ async def mock_get_order_statuses(
7777
async def mock_search_opportunities(
7878
product_router: ProductRouter,
7979
search: OpportunityRequest,
80-
request: Request,
8180
next: str | None,
8281
limit: int,
82+
request: Request,
8383
) -> ResultE[tuple[list[Opportunity], Maybe[str]]]:
8484
try:
8585
start = 0

0 commit comments

Comments
 (0)