diff options
| author | Rémy Coutable <remy@rymai.me> | 2017-03-09 00:41:02 +0100 |
|---|---|---|
| committer | Rémy Coutable <remy@rymai.me> | 2017-03-13 17:33:17 +0100 |
| commit | 5f7592d53805b18fbbc2a117ab8b4d953b13dbb1 (patch) | |
| tree | bdf58db80db8b2b9b1d88a3417ea915d66e2561c /spec/support | |
| parent | 1d4b11f3388ddd7cf0076f95ac26196f6949dc0b (diff) | |
| download | gitlab-ce-5f7592d53805b18fbbc2a117ab8b4d953b13dbb1.tar.gz | |
Implement `json_response` as a `let` variable
This is not a good idea to memoize `json_response` using an instance
variable because `rspec-retry` doesn't clear instance variables on
retries, only `let` variables.
This will avoid issues where retries would fail on a different line that
the original failure, blurrying what's the real failure.
Also, automatically add api: true to specs under
/spec/requests/(ci/)?api/, and include JsonHelpers in controller, request
and API specs.
Signed-off-by: Rémy Coutable <remy@rymai.me>
Diffstat (limited to 'spec/support')
| -rw-r--r-- | spec/support/api_helpers.rb | 4 | ||||
| -rw-r--r-- | spec/support/json_response_helpers.rb | 9 |
2 files changed, 9 insertions, 4 deletions
diff --git a/spec/support/api_helpers.rb b/spec/support/api_helpers.rb index ae6e708cf87..35d1e1cfc7d 100644 --- a/spec/support/api_helpers.rb +++ b/spec/support/api_helpers.rb @@ -49,8 +49,4 @@ module ApiHelpers '' end end - - def json_response - @_json_response ||= JSON.parse(response.body) - end end diff --git a/spec/support/json_response_helpers.rb b/spec/support/json_response_helpers.rb new file mode 100644 index 00000000000..e8d2ef2d7f0 --- /dev/null +++ b/spec/support/json_response_helpers.rb @@ -0,0 +1,9 @@ +shared_context 'JSON response' do + let(:json_response) { JSON.parse(response.body) } +end + +RSpec.configure do |config| + config.include_context 'JSON response', type: :controller + config.include_context 'JSON response', type: :request + config.include_context 'JSON response', :api +end |
