summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBob Van Landuyt <bob@gitlab.com>2019-07-30 16:40:32 +0000
committerBob Van Landuyt <bob@gitlab.com>2019-07-30 16:40:32 +0000
commit9ba87676c89c68d5d3901710e798b15987ed0b58 (patch)
tree417579f159182f40eb513ab07ea5a8c4487ba2d1
parentd55b52f2e31db2458407741e06dbe4a469a71bcd (diff)
parent8738a83390e640059b5c3f20ec13f4c3c48576ae (diff)
downloadgitlab-ce-9ba87676c89c68d5d3901710e798b15987ed0b58.tar.gz
Merge branch 'ce-delete-designs-v2' into 'master'
Improves graphql_helpers See merge request gitlab-org/gitlab-ce!31251
-rw-r--r--spec/support/helpers/graphql_helpers.rb8
1 files changed, 6 insertions, 2 deletions
diff --git a/spec/support/helpers/graphql_helpers.rb b/spec/support/helpers/graphql_helpers.rb
index ae1b859ae3f..d86371d70b9 100644
--- a/spec/support/helpers/graphql_helpers.rb
+++ b/spec/support/helpers/graphql_helpers.rb
@@ -3,6 +3,8 @@
module GraphqlHelpers
MutationDefinition = Struct.new(:query, :variables)
+ NoData = Class.new(StandardError)
+
# makes an underscored string look like a fieldname
# "merge_request" => "mergeRequest"
def self.fieldnamerize(underscored_field_name)
@@ -158,8 +160,9 @@ module GraphqlHelpers
post_graphql(mutation.query, current_user: current_user, variables: mutation.variables)
end
+ # Raises an error if no data is found
def graphql_data
- json_response['data']
+ json_response['data'] || (raise NoData, graphql_errors)
end
def graphql_errors
@@ -173,8 +176,9 @@ module GraphqlHelpers
end
end
+ # Raises an error if no response is found
def graphql_mutation_response(mutation_name)
- graphql_data[GraphqlHelpers.fieldnamerize(mutation_name)]
+ graphql_data.fetch(GraphqlHelpers.fieldnamerize(mutation_name))
end
def nested_fields?(field)