rails-response-dumper 2.0.0 → 2.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/bin/rails-response-dumper +27 -4
  3. metadata +21 -7
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1f3a97f78890f8b28c7d89704adeb5ff8239c1bddad4dc0aabc50b443dcc075f
4
- data.tar.gz: 6531326b53a3f906ee6bb104e1096404fe9e9213d4bbcfbcc06df34bcc6e1edf
3
+ metadata.gz: 5d60e4df92e8fd8339624f1fa9244ace8b901368b64278579027bf9d824d4185
4
+ data.tar.gz: 796e5b8b849ea40a02657078a7d324c2846fabdc29c31bf36fee50a362d48395
5
5
  SHA512:
6
- metadata.gz: e6f6ba4d8eafe2efad495fa2f4ffc1e36e3d735fd6ac96cce293bcc696fc0d5d0cc2a5b989bd6b3ff4ad66f35a19ea178e4b814e0da1e88ba457a0d33d6ee745
7
- data.tar.gz: c0119049c2eaf7b47cf2d0b43450f0a720885fefca895a849d24aba8d855d3bdddf1e09a041a4a615cf1a1e2fdb17ba6babfd94142f3d4c574794339bf62d716
6
+ metadata.gz: 12ed413c69767aa0936b88f7e526c2ec419cdc435707390272a370c5f41c3dcbcaa845685c039b8dbe148110044d7aedb9e19916658aab59c2ffb365ec9024f5
7
+ data.tar.gz: 8afe7bd7ba82df75de81a97576bdebb967fc116c42ddd37c36965d9ad027ac03b998b95994d9483c2a383ba76d96986ab2dffb68ee28ea6b6a970aae460a9650
@@ -3,12 +3,14 @@
3
3
 
4
4
  require 'fileutils'
5
5
  require 'mime/types'
6
+ require 'rspec/mocks'
6
7
 
7
8
  ENV['RAILS_ENV'] ||= 'test'
8
9
  require "#{Dir.pwd}/config/environment"
9
10
 
10
11
  class ResponseDumper
11
12
  include ActionDispatch::Integration::Runner
13
+ include RSpec::Mocks::ExampleMethods
12
14
 
13
15
  attr_reader :expected_status_code
14
16
 
@@ -45,6 +47,16 @@ class ResponseDumper
45
47
  @responses ||= []
46
48
  end
47
49
 
50
+ def mock_setup
51
+ RSpec::Mocks.setup
52
+ end
53
+
54
+ def mock_teardown
55
+ RSpec::Mocks.verify
56
+ ensure
57
+ RSpec::Mocks.teardown
58
+ end
59
+
48
60
  [:get, :post, :patch, :put, :head, :delete].each do |method|
49
61
  module_eval <<~RUBY, __FILE__, __LINE__ + 1
50
62
  def #{method}(...)
@@ -54,6 +66,12 @@ class ResponseDumper
54
66
  end
55
67
  RUBY
56
68
  end
69
+
70
+ # The list of methods is too long to be useful so shorten to just the class
71
+ # name.
72
+ def inspect
73
+ "#<#{self.class.name}>"
74
+ end
57
75
  end
58
76
 
59
77
  def run_dumps
@@ -70,10 +88,15 @@ def run_dumps
70
88
  klass.reset_models!
71
89
 
72
90
  dumper = klass.new
73
- ActiveRecord::Base.transaction do
74
- dumper.expect_status_code!(:ok)
75
- dumper.send(method)
76
- raise ActiveRecord::Rollback
91
+ dumper.mock_setup
92
+ begin
93
+ ActiveRecord::Base.transaction do
94
+ dumper.expect_status_code!(:ok)
95
+ dumper.send(method)
96
+ raise ActiveRecord::Rollback
97
+ end
98
+ ensure
99
+ dumper.mock_teardown
77
100
  end
78
101
 
79
102
  klass_path = klass.name.underscore
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rails-response-dumper
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.0
4
+ version: 2.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Pioneer Valley Books
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-02-03 00:00:00.000000000 Z
11
+ date: 2022-03-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -30,11 +30,25 @@ dependencies:
30
30
  - - "<"
31
31
  - !ruby/object:Gem::Version
32
32
  version: '8'
33
+ - !ruby/object:Gem::Dependency
34
+ name: rspec-mocks
35
+ requirement: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - ">="
38
+ - !ruby/object:Gem::Version
39
+ version: '0'
40
+ type: :runtime
41
+ prerelease: false
42
+ version_requirements: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - ">="
45
+ - !ruby/object:Gem::Version
46
+ version: '0'
33
47
  description: |
34
48
  Rails Response Dumper is a library and command line tool to dump HTTP
35
49
  responses from a Rails application to the file system. These responses can
36
50
  then be consumed by other tools for testing and verification purposes.
37
- email:
51
+ email:
38
52
  executables:
39
53
  - rails-response-dumper
40
54
  extensions: []
@@ -46,7 +60,7 @@ licenses:
46
60
  - MIT
47
61
  metadata:
48
62
  rubygems_mfa_required: 'true'
49
- post_install_message:
63
+ post_install_message:
50
64
  rdoc_options: []
51
65
  require_paths:
52
66
  - lib
@@ -61,8 +75,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
61
75
  - !ruby/object:Gem::Version
62
76
  version: '0'
63
77
  requirements: []
64
- rubygems_version: 3.2.22
65
- signing_key:
78
+ rubygems_version: 3.3.3
79
+ signing_key:
66
80
  specification_version: 4
67
81
  summary: Dump HTTP responses from a Rails application to the file system
68
82
  test_files: []