Sha256: ccd4654cf1358f3fc7c4bc5cb1f95fe2d23ae387f18d3fc9b117abbcae1862de
Contents?: true
Size: 1.04 KB
Versions: 15
Compression:
Stored size: 1.04 KB
Contents
# frozen_string_literal: true require "spec_helper" describe GraphQL::Schema::Directive::Transform do class TransformSchema < GraphQL::Schema class Query < GraphQL::Schema::Object field :echo, String, null: false do argument :input, String, required: true end def echo(input:) input end end directive(GraphQL::Schema::Directive::Transform) query(Query) # only supported by the interpreter use GraphQL::Execution::Interpreter use GraphQL::Analysis::AST end it "transforms when applicable" do str = '{ normal: echo(input: "Hello") upcased: echo(input: "Hello") @transform(by: "upcase") downcased: echo(input: "Hello") @transform(by: "downcase") nonsense: echo(input: "Hello") @transform(by: "nonsense") }' res = TransformSchema.execute(str) assert_equal "Hello", res["data"]["normal"] assert_equal "HELLO", res["data"]["upcased"] assert_equal "hello", res["data"]["downcased"] assert_equal "Hello", res["data"]["nonsense"] end end
Version data entries
15 entries across 15 versions & 1 rubygems