Class: GraphQL::StaticValidation::Validator
- Inherits:
-
Object
- Object
- GraphQL::StaticValidation::Validator
- Defined in:
- lib/graph_ql/static_validation/validator.rb
Defined Under Namespace
Classes: Context
Constant Summary collapse
- VALIDATORS =
[ GraphQL::StaticValidation::DirectivesAreDefined, GraphQL::StaticValidation::ArgumentsAreDefined, GraphQL::StaticValidation::RequiredArgumentsArePresent, GraphQL::StaticValidation::ArgumentLiteralsAreCompatible, GraphQL::StaticValidation::FragmentTypesExist, GraphQL::StaticValidation::FragmentsAreUsed, GraphQL::StaticValidation::FieldsAreDefinedOnType, GraphQL::StaticValidation::FieldsWillMerge, GraphQL::StaticValidation::FieldsHaveAppropriateSelections, ]
Instance Method Summary collapse
-
#initialize(schema:, validators: VALIDATORS) ⇒ Validator
constructor
A new instance of Validator.
- #validate(document) ⇒ Object
Constructor Details
#initialize(schema:, validators: VALIDATORS) ⇒ Validator
Returns a new instance of Validator.
14 15 16 17 |
# File 'lib/graph_ql/static_validation/validator.rb', line 14 def initialize(schema:, validators: VALIDATORS) @schema = schema @validators = validators end |
Instance Method Details
#validate(document) ⇒ Object
19 20 21 22 23 24 25 26 |
# File 'lib/graph_ql/static_validation/validator.rb', line 19 def validate(document) context = Context.new(@schema, document) @validators.each do |validator| validator.new.validate(context) end context.visitor.visit(document) context.errors.map(&:to_h) end |