class GraphQL::SchemaComparator::Changes::DirectiveArgumentDefaultChanged

Attributes

criticality[R]
directive[R]
new_argument[R]
old_argument[R]

Public Class Methods

new(directive, old_argument, new_argument) click to toggle source
# File lib/graphql/schema_comparator/changes.rb, line 493
def initialize(directive, old_argument, new_argument)
  @criticality = Changes::Criticality.dangerous(
    reason: "Changing the default value for an argument may change the runtime " \
      "behaviour of a field if it was never provided."
  )
  @directive = directive
  @old_argument = old_argument
  @new_argument = new_argument
end

Public Instance Methods

message() click to toggle source
# File lib/graphql/schema_comparator/changes.rb, line 503
def message
  "Default value for argument `#{new_argument.graphql_name}` on directive `#{directive.graphql_name}` changed"\
    " from `#{old_argument.default_value}` to `#{new_argument.default_value}`"
end
path() click to toggle source
# File lib/graphql/schema_comparator/changes.rb, line 508
def path
  ["@#{directive.graphql_name}", new_argument.graphql_name].join(".")
end