Sha256: 2444325db9fb76cc68bc193afb7bb7f8266cf7a278322b80f6599e9498989dae
Contents?: true
Size: 1.27 KB
Versions: 1
Compression:
Stored size: 1.27 KB
Contents
require "spec_helper" describe GraphQL::StaticValidation::FragmentsAreUsed do let(:query_string) {" query getCheese { name, ...cheeseFields ...undefinedFields } fragment cheeseFields on Cheese { fatContent } fragment unusedFields on Cheese { is, not, used } "} let(:validator) { GraphQL::StaticValidation::Validator.new(schema: DummySchema, rules: [GraphQL::StaticValidation::FragmentsAreUsed]) } let(:query) { GraphQL::Query.new(DummySchema, query_string) } let(:errors) { validator.validate(query)[:errors] } it "adds errors for unused fragment definitions" do assert_includes(errors, { "message"=>"Fragment unusedFields was defined, but not used", "locations"=>[{"line"=>8, "column"=>5}], "fields"=>[], }) end it "adds errors for undefined fragment spreads" do assert_includes(errors, { "message"=>"Fragment undefinedFields was used, but not defined", "locations"=>[{"line"=>5, "column"=>7}], "fields"=>["query getCheese", "... undefinedFields"] }) end describe "queries that are comments" do let(:query_string) {%| # I am a comment. |} let(:result) { DummySchema.execute(query_string) } it "handles them gracefully" do assert_equal({}, result) end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
graphql-0.18.15 | spec/graphql/static_validation/rules/fragments_are_used_spec.rb |