Skip to content

Commit d099d74

Browse files
committed
Fix signature tests
1 parent d49fc62 commit d099d74

File tree

2 files changed

+25
-40
lines changed

2 files changed

+25
-40
lines changed

tests/unit/sdk/conftest.py

Lines changed: 25 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -55,27 +55,32 @@ async def echo_clients(clients: BothClients) -> AsyncGenerator[BothClients, None
5555

5656

5757
@pytest.fixture
58-
def replace_async_return_annotation():
58+
def return_annotation_map() -> dict[str, str]:
59+
return {
60+
"type[SchemaType]": "type[SchemaTypeSync]",
61+
"SchemaType": "SchemaTypeSync",
62+
"CoreNode": "CoreNodeSync",
63+
"Optional[CoreNode]": "Optional[CoreNodeSync]",
64+
"Union[str, type[SchemaType]]": "Union[str, type[SchemaTypeSync]]",
65+
"Union[InfrahubNode, SchemaType]": "Union[InfrahubNodeSync, SchemaTypeSync]",
66+
"Union[InfrahubNode, SchemaType, None]": "Union[InfrahubNodeSync, SchemaTypeSync, None]",
67+
"Union[list[InfrahubNode], list[SchemaType]]": "Union[list[InfrahubNodeSync], list[SchemaTypeSync]]",
68+
"InfrahubClient": "InfrahubClientSync",
69+
"InfrahubNode": "InfrahubNodeSync",
70+
"list[InfrahubNode]": "list[InfrahubNodeSync]",
71+
"Optional[InfrahubNode]": "Optional[InfrahubNodeSync]",
72+
"Optional[type[SchemaType]]": "Optional[type[SchemaTypeSync]]",
73+
"Optional[Union[CoreNode, SchemaType]]": "Optional[Union[CoreNodeSync, SchemaTypeSync]]",
74+
"InfrahubBatch": "InfrahubBatchSync",
75+
}
76+
77+
78+
@pytest.fixture
79+
def replace_async_return_annotation(return_annotation_map: dict[str, str]):
5980
"""Allows for comparison between sync and async return annotations."""
6081

6182
def replace_annotation(annotation: str) -> str:
62-
replacements = {
63-
"type[SchemaType]": "type[SchemaTypeSync]",
64-
"SchemaType": "SchemaTypeSync",
65-
"CoreNode": "CoreNodeSync",
66-
"Optional[CoreNode]": "Optional[CoreNodeSync]",
67-
"Union[str, type[SchemaType]]": "Union[str, type[SchemaTypeSync]]",
68-
"Union[InfrahubNode, SchemaType]": "Union[InfrahubNodeSync, SchemaTypeSync]",
69-
"Union[InfrahubNode, SchemaType, None]": "Union[InfrahubNodeSync, SchemaTypeSync, None]",
70-
"Union[list[InfrahubNode], list[SchemaType]]": "Union[list[InfrahubNodeSync], list[SchemaTypeSync]]",
71-
"InfrahubClient": "InfrahubClientSync",
72-
"InfrahubNode": "InfrahubNodeSync",
73-
"list[InfrahubNode]": "list[InfrahubNodeSync]",
74-
"Optional[InfrahubNode]": "Optional[InfrahubNodeSync]",
75-
"Optional[type[SchemaType]]": "Optional[type[SchemaTypeSync]]",
76-
"Optional[Union[CoreNode, SchemaType]]": "Optional[Union[CoreNodeSync, SchemaTypeSync]]",
77-
}
78-
return replacements.get(annotation) or annotation
83+
return return_annotation_map.get(annotation) or annotation
7984

8085
return replace_annotation
8186

@@ -95,26 +100,11 @@ def replace_annotations(parameters: Mapping[str, Parameter]) -> tuple[str, str]:
95100

96101

97102
@pytest.fixture
98-
def replace_sync_return_annotation() -> str:
103+
def replace_sync_return_annotation(return_annotation_map: dict[str, str]) -> str:
99104
"""Allows for comparison between sync and async return annotations."""
100105

101106
def replace_annotation(annotation: str) -> str:
102-
replacements = {
103-
"type[SchemaTypeSync]": "type[SchemaType]",
104-
"SchemaTypeSync": "SchemaType",
105-
"CoreNodeSync": "CoreNode",
106-
"Optional[CoreNodeSync]": "Optional[CoreNode]",
107-
"Union[str, type[SchemaTypeSync]]": "Union[str, type[SchemaType]]",
108-
"Union[InfrahubNodeSync, SchemaTypeSync]": "Union[InfrahubNode, SchemaType]",
109-
"Union[InfrahubNodeSync, SchemaTypeSync, None]": "Union[InfrahubNode, SchemaType, None]",
110-
"Union[list[InfrahubNodeSync], list[SchemaTypeSync]]": "Union[list[InfrahubNode], list[SchemaType]]",
111-
"InfrahubClientSync": "InfrahubClient",
112-
"InfrahubNodeSync": "InfrahubNode",
113-
"list[InfrahubNodeSync]": "list[InfrahubNode]",
114-
"Optional[InfrahubNodeSync]": "Optional[InfrahubNode]",
115-
"Optional[type[SchemaTypeSync]]": "Optional[type[SchemaType]]",
116-
"Optional[Union[CoreNodeSync, SchemaTypeSync]]": "Optional[Union[CoreNode, SchemaType]]",
117-
}
107+
replacements = {v: k for k, v in return_annotation_map.items()}
118108
return replacements.get(annotation) or annotation
119109

120110
return replace_annotation

tests/unit/sdk/test_batch.py

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -51,8 +51,3 @@ async def test_batch_exception(
5151
async for _, _ in batch.execute():
5252
pass
5353
assert "An error occurred while executing the GraphQL Query" in str(exc.value)
54-
55-
56-
async def test_batch_not_implemented_sync(clients: BothClients):
57-
with pytest.raises(NotImplementedError):
58-
clients.sync.create_batch()

0 commit comments

Comments
 (0)