Sha256: 56fbf12e69490be8ca02d138f8d348f7ebb737edc64caf3aa35d97301fa18db9

Contents?: true

Size: 456 Bytes

Versions: 24

Compression:

Stored size: 456 Bytes

Contents

class GraphQL::Schema::EachItemValidator
  def initialize(errors)
    @errors = errors
  end

  def validate(items, as:, must_be:)
    if !items.is_a?(Array)
      @errors << "#{as} must be an Array, not #{items.inspect}"
      return
    else
      invalid_items = items.select {|k| !yield(k) }
      if invalid_items.any?
        @errors << "#{as} must be #{must_be}, but some aren't: #{invalid_items.map(&:to_s).join(", ")}"
      end
    end
  end
end

Version data entries

24 entries across 24 versions & 1 rubygems

Version Path
graphql-0.12.1 lib/graphql/schema/each_item_validator.rb
graphql-0.12.0 lib/graphql/schema/each_item_validator.rb
graphql-0.11.1 lib/graphql/schema/each_item_validator.rb
graphql-0.11.0 lib/graphql/schema/each_item_validator.rb
graphql-0.10.9 lib/graphql/schema/each_item_validator.rb
graphql-0.10.8 lib/graphql/schema/each_item_validator.rb
graphql-0.10.7 lib/graphql/schema/each_item_validator.rb
graphql-0.10.6 lib/graphql/schema/each_item_validator.rb
graphql-0.10.5 lib/graphql/schema/each_item_validator.rb
graphql-0.10.4 lib/graphql/schema/each_item_validator.rb
graphql-0.10.3 lib/graphql/schema/each_item_validator.rb
graphql-0.10.2 lib/graphql/schema/each_item_validator.rb
graphql-0.10.1 lib/graphql/schema/each_item_validator.rb
graphql-0.10.0 lib/graphql/schema/each_item_validator.rb
graphql-0.9.5 lib/graphql/schema/each_item_validator.rb
graphql-0.9.4 lib/graphql/schema/each_item_validator.rb
graphql-0.9.3 lib/graphql/schema/each_item_validator.rb
graphql-0.9.2 lib/graphql/schema/each_item_validator.rb
graphql-0.8.1 lib/graphql/schema/each_item_validator.rb
graphql-0.8.0 lib/graphql/schema/each_item_validator.rb