rails-response-dumper 2.0.0 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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: []