diff --git a/ariadne_codegen/client_generators/input_types.py b/ariadne_codegen/client_generators/input_types.py index 0443bcdc..57929237 100644 --- a/ariadne_codegen/client_generators/input_types.py +++ b/ariadne_codegen/client_generators/input_types.py @@ -19,6 +19,7 @@ generate_method_call, generate_module, generate_name, + generate_pass, generate_pydantic_field, model_has_forward_refs, ) @@ -196,6 +197,9 @@ def _parse_input_definition( class_def.body.append(docstring) self._save_dependencies(root_type=definition.name, field_type=field_type) + if not class_def.body: + class_def.body.append(generate_pass()) + if self.plugin_manager: class_def = self.plugin_manager.generate_input_class( class_def, input_type=definition diff --git a/tests/client_generators/input_types_generator/test_parsing_inputs.py b/tests/client_generators/input_types_generator/test_parsing_inputs.py index b5349a99..7dedb316 100644 --- a/tests/client_generators/input_types_generator/test_parsing_inputs.py +++ b/tests/client_generators/input_types_generator/test_parsing_inputs.py @@ -26,6 +26,8 @@ input CustomInput2 { field: Int! } + + input CustomInput3 """, [ ast.ClassDef( @@ -81,6 +83,14 @@ ], type_params=[], ), + ast.ClassDef( + name="CustomInput3", + bases=[ast.Name(id=BASE_MODEL_CLASS_NAME)], + keywords=[], + decorator_list=[], + body=[ast.Pass()], + type_params=[], + ), ], ) ],