check_please_rspec_matcher 0.2.4 → 0.5.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 94fc21b277f06b61034bac5bf57bdc1f03a8df30141fdd6c7a548f8b62418bf8
4
- data.tar.gz: e23cc3d6eb461067ddaf2c5aa52fdb77e937719ad897cdca8d354d9b74632e10
3
+ metadata.gz: 226a0cec769389fa71dff70198d182eca4236c8dfa4632a55a9e8e95a701eeda
4
+ data.tar.gz: 821a5d101352198d209c5514b33a0b5b4751332b254770076679efa13b10bb48
5
5
  SHA512:
6
- metadata.gz: 64a8f6d12146546e3db0fecaf6eb729565d3005fc390b8cb34a15d40ae2e383512726c9a506b3c827a5cd2f1a80ff890282f646c5c3fe143ef4528b74a02a754
7
- data.tar.gz: 55977844dae06e9bbb5e344c650474558400942fd80f863b8ec909c41d3952a41d07768d10ae20620492d8426d880736c34aeea92feee7cfab0ac0df5bd5ff1f
6
+ metadata.gz: c9c77624663653ebf8e17591caa9dc1a63695bee73e3f57e1a9a66ae4945e03101ae04574996a83a0348335b1bc2c898fa373cec4a5f1547146dca2d7ea468e5
7
+ data.tar.gz: b613778045fe1dd43b5ff811a8bc5fedcffad74103d0b511f3966d0b1ddce0431f4e082e9399932ca9b07f30818f85e54305e1d970d0e05febb8d7f5fb8539c2
@@ -1,14 +1,14 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- check_please_rspec_matcher (0.2.4)
5
- check_please (~> 0.2.4)
4
+ check_please_rspec_matcher (0.5.0)
5
+ check_please (~> 0.4.1)
6
6
  rspec (~> 3.9)
7
7
 
8
8
  GEM
9
9
  remote: https://rubygems.org/
10
10
  specs:
11
- check_please (0.2.4)
11
+ check_please (0.4.1)
12
12
  table_print
13
13
  diff-lcs (1.4.4)
14
14
  rake (12.3.3)
data/README.md CHANGED
@@ -5,6 +5,13 @@ structures parsed from them). Most of the heavy lifting is done by the
5
5
  [check_please](https://github.com/RealGeeks/check_please) gem; this is merely
6
6
  an RSpec wrapper that I didn't want to include in the main gem.
7
7
 
8
+ ## See Also
9
+
10
+ If you'd like more control over the output formatting, and especially if you'd
11
+ like to provide custom logic for diffing your own classes, you might be better
12
+ served by the [super_diff](https://github.com/mcmire/super_diff) gem. Check it
13
+ out!
14
+
8
15
  ## Installation
9
16
 
10
17
  Add this line to your application's Gemfile:
@@ -48,12 +55,16 @@ mismatch | /foo | 42 | 43
48
55
 
49
56
  ### Options
50
57
 
51
- The `check_please` helper method currently accepts a single keyword argument:
58
+ The `check_please` helper method accepts keyword arguments that correspond to
59
+ the flags defined in the CheckPlease gem. I haven't documented these yet, but
60
+ if you feel like reading some source code, search [this
61
+ file](https://github.com/RealGeeks/check_please/blob/main/lib/check_please.rb)
62
+ for `Flags.define`.
52
63
 
53
64
  ```ruby
54
65
  reference = '{ "foo": 42 }'
55
66
  candidate = '{ "foo": 43 }'
56
- expect( candidate ).to check_please( reference, format_diffs: :json )
67
+ expect( candidate ).to check_please( reference, format: :json )
57
68
  ```
58
69
 
59
70
  Using `:json` as above will output the diffs in JSON instead of a table:
@@ -25,6 +25,6 @@ Gem::Specification.new do |spec|
25
25
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
26
26
  spec.require_paths = ["lib"]
27
27
 
28
- spec.add_dependency "check_please", "~> #{CheckPleaseRspecMatcher::VERSION}" # this may turn out to be a bad idea?
28
+ spec.add_dependency "check_please", "~> 0.4.1" # NOTE: this should *usually* correspond with this gem's VERSION constant
29
29
  spec.add_dependency "rspec", "~> 3.9"
30
30
  end
@@ -3,15 +3,15 @@ require 'check_please'
3
3
  module CheckPleaseRspecMatcher
4
4
 
5
5
  module RSpecHelper
6
- def check_please(expected, format_diffs: nil)
7
- CheckPleaseRspecMatcher::Matcher.new(expected, format_diffs: format_diffs)
6
+ def check_please(expected, flags = {})
7
+ ::CheckPleaseRspecMatcher::Matcher.new(expected, flags)
8
8
  end
9
9
  end
10
10
 
11
11
  class Matcher
12
- def initialize(expected, opts = {})
12
+ def initialize(expected, flags = {})
13
13
  @expected = expected
14
- @opts = opts || {}
14
+ @flags = flags || {}
15
15
  end
16
16
 
17
17
  def matches?(actual)
@@ -20,8 +20,7 @@ module CheckPleaseRspecMatcher
20
20
  end
21
21
 
22
22
  def failure_message
23
- format = opts[:format_diffs]
24
- diff_text = CheckPlease::Printers.render(diffs, format)
23
+ diff_text = ::CheckPlease::Printers.render(diffs, flags)
25
24
  <<~EOF
26
25
  Expected two JSON data structures to match, but found the following diffs:
27
26
 
@@ -30,10 +29,10 @@ module CheckPleaseRspecMatcher
30
29
  end
31
30
 
32
31
  private
33
- attr_reader :expected, :opts, :actual
32
+ attr_reader :expected, :flags, :actual
34
33
 
35
34
  def diffs
36
- @_diffs ||= ::CheckPlease.diff(@expected, @actual)
35
+ @_diffs ||= ::CheckPlease.diff(expected, actual, flags)
37
36
  end
38
37
  end
39
38
 
@@ -1,4 +1,4 @@
1
1
  module CheckPleaseRspecMatcher
2
- # NOTE: the gemspec declares its dependency on 'check_please' as '~>' to this
3
- VERSION = "0.2.4"
2
+ # NOTE: don't forget to change the dependency on the 'check_please' gem in the .gemspec file
3
+ VERSION = "0.5.0"
4
4
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: check_please_rspec_matcher
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.4
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sam Livingston-Gray
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-11-18 00:00:00.000000000 Z
11
+ date: 2020-11-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: check_please
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 0.2.4
19
+ version: 0.4.1
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 0.2.4
26
+ version: 0.4.1
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rspec
29
29
  requirement: !ruby/object:Gem::Requirement