123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157 |
- """GraphQL Validation
- The :mod:`graphql.validation` package fulfills the Validation phase of fulfilling a
- GraphQL result.
- """
- from .validate import validate
- from .validation_context import (
- ASTValidationContext,
- SDLValidationContext,
- ValidationContext,
- )
- from .rules import ValidationRule, ASTValidationRule, SDLValidationRule
- # All validation rules in the GraphQL Specification.
- from .specified_rules import specified_rules
- # Spec Section: "Executable Definitions"
- from .rules.executable_definitions import ExecutableDefinitionsRule
- # Spec Section: "Field Selections on Objects, Interfaces, and Unions Types"
- from .rules.fields_on_correct_type import FieldsOnCorrectTypeRule
- # Spec Section: "Fragments on Composite Types"
- from .rules.fragments_on_composite_types import FragmentsOnCompositeTypesRule
- # Spec Section: "Argument Names"
- from .rules.known_argument_names import KnownArgumentNamesRule
- # Spec Section: "Directives Are Defined"
- from .rules.known_directives import KnownDirectivesRule
- # Spec Section: "Fragment spread target defined"
- from .rules.known_fragment_names import KnownFragmentNamesRule
- # Spec Section: "Fragment Spread Type Existence"
- from .rules.known_type_names import KnownTypeNamesRule
- # Spec Section: "Lone Anonymous Operation"
- from .rules.lone_anonymous_operation import LoneAnonymousOperationRule
- # Spec Section: "Fragments must not form cycles"
- from .rules.no_fragment_cycles import NoFragmentCyclesRule
- # Spec Section: "All Variable Used Defined"
- from .rules.no_undefined_variables import NoUndefinedVariablesRule
- # Spec Section: "Fragments must be used"
- from .rules.no_unused_fragments import NoUnusedFragmentsRule
- # Spec Section: "All Variables Used"
- from .rules.no_unused_variables import NoUnusedVariablesRule
- # Spec Section: "Field Selection Merging"
- from .rules.overlapping_fields_can_be_merged import OverlappingFieldsCanBeMergedRule
- # Spec Section: "Fragment spread is possible"
- from .rules.possible_fragment_spreads import PossibleFragmentSpreadsRule
- # Spec Section: "Argument Optionality"
- from .rules.provided_required_arguments import ProvidedRequiredArgumentsRule
- # Spec Section: "Leaf Field Selections"
- from .rules.scalar_leafs import ScalarLeafsRule
- # Spec Section: "Subscriptions with Single Root Field"
- from .rules.single_field_subscriptions import SingleFieldSubscriptionsRule
- # Spec Section: "Argument Uniqueness"
- from .rules.unique_argument_names import UniqueArgumentNamesRule
- # Spec Section: "Directives Are Unique Per Location"
- from .rules.unique_directives_per_location import UniqueDirectivesPerLocationRule
- # Spec Section: "Fragment Name Uniqueness"
- from .rules.unique_fragment_names import UniqueFragmentNamesRule
- # Spec Section: "Input Object Field Uniqueness"
- from .rules.unique_input_field_names import UniqueInputFieldNamesRule
- # Spec Section: "Operation Name Uniqueness"
- from .rules.unique_operation_names import UniqueOperationNamesRule
- # Spec Section: "Variable Uniqueness"
- from .rules.unique_variable_names import UniqueVariableNamesRule
- # Spec Section: "Value Type Correctness"
- from .rules.values_of_correct_type import ValuesOfCorrectTypeRule
- # Spec Section: "Variables are Input Types"
- from .rules.variables_are_input_types import VariablesAreInputTypesRule
- # Spec Section: "All Variable Usages Are Allowed"
- from .rules.variables_in_allowed_position import VariablesInAllowedPositionRule
- # SDL-specific validation rules
- from .rules.lone_schema_definition import LoneSchemaDefinitionRule
- from .rules.unique_operation_types import UniqueOperationTypesRule
- from .rules.unique_type_names import UniqueTypeNamesRule
- from .rules.unique_enum_value_names import UniqueEnumValueNamesRule
- from .rules.unique_field_definition_names import UniqueFieldDefinitionNamesRule
- from .rules.unique_argument_definition_names import UniqueArgumentDefinitionNamesRule
- from .rules.unique_directive_names import UniqueDirectiveNamesRule
- from .rules.possible_type_extensions import PossibleTypeExtensionsRule
- # Optional rules not defined by the GraphQL Specification
- from .rules.custom.no_deprecated import NoDeprecatedCustomRule
- from .rules.custom.no_schema_introspection import NoSchemaIntrospectionCustomRule
- __all__ = [
- "validate",
- "ASTValidationContext",
- "ASTValidationRule",
- "SDLValidationContext",
- "SDLValidationRule",
- "ValidationContext",
- "ValidationRule",
- "specified_rules",
- "ExecutableDefinitionsRule",
- "FieldsOnCorrectTypeRule",
- "FragmentsOnCompositeTypesRule",
- "KnownArgumentNamesRule",
- "KnownDirectivesRule",
- "KnownFragmentNamesRule",
- "KnownTypeNamesRule",
- "LoneAnonymousOperationRule",
- "NoFragmentCyclesRule",
- "NoUndefinedVariablesRule",
- "NoUnusedFragmentsRule",
- "NoUnusedVariablesRule",
- "OverlappingFieldsCanBeMergedRule",
- "PossibleFragmentSpreadsRule",
- "ProvidedRequiredArgumentsRule",
- "ScalarLeafsRule",
- "SingleFieldSubscriptionsRule",
- "UniqueArgumentNamesRule",
- "UniqueDirectivesPerLocationRule",
- "UniqueFragmentNamesRule",
- "UniqueInputFieldNamesRule",
- "UniqueOperationNamesRule",
- "UniqueVariableNamesRule",
- "ValuesOfCorrectTypeRule",
- "VariablesAreInputTypesRule",
- "VariablesInAllowedPositionRule",
- "LoneSchemaDefinitionRule",
- "UniqueOperationTypesRule",
- "UniqueTypeNamesRule",
- "UniqueEnumValueNamesRule",
- "UniqueFieldDefinitionNamesRule",
- "UniqueArgumentDefinitionNamesRule",
- "UniqueDirectiveNamesRule",
- "PossibleTypeExtensionsRule",
- "NoDeprecatedCustomRule",
- "NoSchemaIntrospectionCustomRule",
- ]
|