diff --git a/ariadne/contrib/federation/schema.py b/ariadne/contrib/federation/schema.py index c406f27c2..5f299fa0f 100644 --- a/ariadne/contrib/federation/schema.py +++ b/ariadne/contrib/federation/schema.py @@ -142,7 +142,7 @@ def extend_federated_schema( assume_valid_sdl, ) - for (k, v) in schema.type_map.items(): + for k, v in schema.type_map.items(): resolve_reference = getattr(v, "__resolve_reference__", None) if resolve_reference and k in extended_schema.type_map: setattr( diff --git a/ariadne/contrib/federation/utils.py b/ariadne/contrib/federation/utils.py index 8ede4dbdc..98585db27 100644 --- a/ariadne/contrib/federation/utils.py +++ b/ariadne/contrib/federation/utils.py @@ -79,7 +79,7 @@ def resolve_entities(_: Any, info: GraphQLResolveInfo, **kwargs) -> Any: type_object = info.schema.get_type(__typename) if not type_object or not isinstance(type_object, GraphQLObjectType): - raise Exception( + raise TypeError( f"The `_entities` resolver tried to load an entity for" f' type "{__typename}", but no object type of that name' f" was found in the schema", diff --git a/ariadne/contrib/tracing/opentracing.py b/ariadne/contrib/tracing/opentracing.py index bd1dec911..8de0b7f65 100644 --- a/ariadne/contrib/tracing/opentracing.py +++ b/ariadne/contrib/tracing/opentracing.py @@ -129,6 +129,8 @@ def repr_upload_file(upload_file: Union[UploadFile, File]) -> str: else: filename = upload_file.filename + mime_type: Union[str, None] + if isinstance(upload_file, File): mime_type = "not/available" else: diff --git a/ariadne/enums.py b/ariadne/enums.py index 50f42ee6c..125ead832 100644 --- a/ariadne/enums.py +++ b/ariadne/enums.py @@ -129,7 +129,6 @@ def is_invalid_enum_value(field: Union[GraphQLInputField, GraphQLArgument]) -> b def find_enum_values_in_schema( schema: GraphQLSchema, ) -> Generator[Union[ArgumentWithKeys, InputFieldWithKeys], None, None]: - for name, type_ in schema.type_map.items(): result = enum_values_in_types(type_, name) if result is not None: diff --git a/ariadne/graphql.py b/ariadne/graphql.py index b95d4e3d9..699d56791 100644 --- a/ariadne/graphql.py +++ b/ariadne/graphql.py @@ -145,14 +145,14 @@ async def graphql( debug=debug, extension_manager=extension_manager, ) - else: - return handle_query_result( - result, - logger=logger, - error_formatter=error_formatter, - debug=debug, - extension_manager=extension_manager, - ) + + return handle_query_result( + result, + logger=logger, + error_formatter=error_formatter, + debug=debug, + extension_manager=extension_manager, + ) def graphql_sync( @@ -250,14 +250,14 @@ def graphql_sync( debug=debug, extension_manager=extension_manager, ) - else: - return handle_query_result( - result, - logger=logger, - error_formatter=error_formatter, - debug=debug, - extension_manager=extension_manager, - ) + + return handle_query_result( + result, + logger=logger, + error_formatter=error_formatter, + debug=debug, + extension_manager=extension_manager, + ) async def subscribe( @@ -328,13 +328,13 @@ async def subscribe( except GraphQLError as error: log_error(error, logger) return False, [error_formatter(error, debug)] - else: - if isinstance(result, ExecutionResult): - errors = cast(List[GraphQLError], result.errors) - for error_ in errors: # mypy issue #5080 - log_error(error_, logger) - return False, [error_formatter(error, debug) for error in errors] - return True, cast(AsyncGenerator, result) + + if isinstance(result, ExecutionResult): + errors = cast(List[GraphQLError], result.errors) + for error_ in errors: # mypy issue #5080 + log_error(error_, logger) + return False, [error_formatter(error, debug) for error in errors] + return True, cast(AsyncGenerator, result) def handle_query_result( diff --git a/ariadne/schema_visitor.py b/ariadne/schema_visitor.py index 73aeffa97..1b2df03a2 100644 --- a/ariadne/schema_visitor.py +++ b/ariadne/schema_visitor.py @@ -174,7 +174,6 @@ def call_method( method_name: str, type_: VisitableSchemaType, *args: Any ) -> Union[VisitableSchemaType, Literal[False]]: for visitor in visitor_selector(type_, method_name): - new_type = getattr(visitor, method_name)(type_, *args) if new_type is None: # Keep going without modifying type. diff --git a/tests/asgi/test_websockets_graphql_transport_ws.py b/tests/asgi/test_websockets_graphql_transport_ws.py index d660c405a..ff0409301 100644 --- a/tests/asgi/test_websockets_graphql_transport_ws.py +++ b/tests/asgi/test_websockets_graphql_transport_ws.py @@ -767,7 +767,6 @@ def test_invalid_operation_id_is_handled_graphql_transport_ws( def test_schema_not_set_graphql_transport_ws( client_graphql_transport_ws, ): - client_graphql_transport_ws.app.websocket_handler.schema = None with pytest.raises(TypeError): with client_graphql_transport_ws.websocket_connect( @@ -786,7 +785,6 @@ def test_schema_not_set_graphql_transport_ws( def test_http_handler_not_set_graphql_transport_ws( client_graphql_transport_ws, ): - client_graphql_transport_ws.app.websocket_handler.http_handler = None with pytest.raises(TypeError): with client_graphql_transport_ws.websocket_connect( diff --git a/tests/conftest.py b/tests/conftest.py index 0a6ade8ed..a43ff5135 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -57,6 +57,7 @@ def resolve_test_root(root, *_): def resolve_error(*_): + # pylint: disable=broad-exception-raised raise Exception("Test exception") @@ -94,6 +95,7 @@ async def ping_generator(*_): async def error_generator(*_): + # pylint: disable=broad-exception-raised raise Exception("Test exception") yield 1 # pylint: disable=unreachable diff --git a/tests/test_directives.py b/tests/test_directives.py index c47ac5034..85440b4fa 100644 --- a/tests/test_directives.py +++ b/tests/test_directives.py @@ -430,7 +430,7 @@ def _resolver(_, info, *, f=None, o=None): user = _get_user(context["headers"]["authToken"]) if not user.has_role(required_role): - raise Exception("not authorized") + raise ValueError("not authorized") return original_resolver(_, info) diff --git a/tests/tracing/test_opentracing.py b/tests/tracing/test_opentracing.py index db49c4336..bbdcb2249 100644 --- a/tests/tracing/test_opentracing.py +++ b/tests/tracing/test_opentracing.py @@ -1,3 +1,4 @@ +from io import BytesIO from unittest.mock import ANY, call import pytest @@ -125,7 +126,12 @@ def arg_filter(args, _): file_size = 1024 * 1024 extension = OpenTracingExtension(arg_filter=arg_filter) - file_ = UploadFile(filename="test", content_type="text/plain") + file_ = UploadFile( + BytesIO(), + size=0, + filename="test", + headers={"content-type": "application/json"}, + ) await file_.write(b"\0" * file_size) kwargs = {"0": file_} info = mocker.Mock()