Skip to content

Commit 85ffc83

Browse files
committed
digest tests.
1 parent 6f552f6 commit 85ffc83

File tree

2 files changed

+24
-1
lines changed

2 files changed

+24
-1
lines changed

lib/graphql/stitching/request.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ class Request
3131
# @param context [Hash, nil] a contextual object passed through resolver flows.
3232
def initialize(supergraph, source, operation_name: nil, variables: nil, context: nil, claims: nil)
3333
@supergraph = supergraph
34-
@claims = claims&.to_set&.freeze
34+
@claims = claims&.sort&.to_set&.freeze
3535
@prepared_document = nil
3636
@string = nil
3737
@digest = nil

test/graphql/stitching/request/request_test.rb

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -145,6 +145,29 @@ def test_provides_digest_and_normalized_digest
145145
end
146146
end
147147

148+
def test_digests_include_claims
149+
query = "{ widget { id } }"
150+
request1 = GraphQL::Stitching::Request.new(@supergraph, query)
151+
request2 = GraphQL::Stitching::Request.new(@supergraph, query)
152+
assert_equal request1.digest, request2.digest
153+
assert_equal request1.normalized_digest, request2.normalized_digest
154+
155+
request3 = GraphQL::Stitching::Request.new(@supergraph, query, claims: ["a"])
156+
request4 = GraphQL::Stitching::Request.new(@supergraph, query, claims: ["a"])
157+
assert_equal request3.digest, request4.digest
158+
assert_equal request3.normalized_digest, request4.normalized_digest
159+
160+
request5 = GraphQL::Stitching::Request.new(@supergraph, query, claims: ["a", "b"])
161+
request6 = GraphQL::Stitching::Request.new(@supergraph, query, claims: ["b", "a"])
162+
assert_equal request5.digest, request6.digest
163+
assert_equal request5.normalized_digest, request6.normalized_digest
164+
165+
assert request1.digest != request3.digest
166+
assert request3.digest != request5.digest
167+
assert request1.normalized_digest != request3.normalized_digest
168+
assert request3.normalized_digest != request5.normalized_digest
169+
end
170+
148171
def test_prepare_variables_collects_variable_defaults
149172
query = %|
150173
query($a: String! = "defaultA", $b: String = "defaultB") {

0 commit comments

Comments
 (0)