rspec-xml_helpers 1.0.2 → 1.0.3

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f5ae4d0e6437d369cc4916fa5dd6ec1ef6696debfed83c114de47bde12ec863c
4
- data.tar.gz: c7525ac59b22ab86104060e893df7ca8cfa0fe82e817754f1ad7edecba82c4e5
3
+ metadata.gz: 123572d79bfbd6d8086278bc8320320ed36dfe2643b262c0b2001022ebe54cbd
4
+ data.tar.gz: 259252a00635e31efeeb57f79800d5452943ae9d403b68d224971750f58ec542
5
5
  SHA512:
6
- metadata.gz: 597d49510c9619fcd06731d1073c1e5289b71476b110f0af12ef7a02e2573821a7b5347bf2d1e999089bee07ba56838f89a5c614a39ad5753674c656524083e5
7
- data.tar.gz: 4052670c9dfea1e136251ce90eea45a0baa41207fa8181cb167a9049589e8783af406f3f17b62de6e8a3b2b9bb9070e7a037a15a29f1136b2c5642eab07c257a
6
+ metadata.gz: 6125e7f1ef9480fe1938b1f1968b203f03d4ba9ec1c0f4e20df2f76134a4d0ff57f60bba29529af969a11f26c3bd67053f575a386824664632bf5ee1e2fd0a1c
7
+ data.tar.gz: 07dd81ce48dbd70f5681ebbf5f39915285cfaf16d20c9539b119d6aa69a68b3a5c3fc41e49ab071cbed8ebec9947702fe65c4ad3cfb5eab75842f4a2f373b7c3
@@ -9,19 +9,36 @@ module RSpec
9
9
  # @api private
10
10
  class XmlMatcher
11
11
 
12
- EXPECTED_XML = 'Expected XML, but encountered an error while ' \
13
- 'parsing the actual value: %<error>s'
12
+ BAD_EXPECTED = <<~MSG
13
+ Encountered an error parsing the match_xml expected value:
14
+ %<error>s
15
+
16
+ Invalid XML:
17
+ %<got>s
18
+ MSG
19
+
20
+ BAD_ACTUAL = <<~MSG
21
+ Expected actual to be an XML string, encountered error while parsing:
22
+ %<error>s
23
+
24
+ Invalid XML:
25
+ %<got>s
26
+ MSG
14
27
 
15
28
  def initialize(expected, colorize: true)
16
29
  @expected = XmlHelpers.normalize_xml(expected)
17
30
  @diff_format = colorize ? :color : :text
31
+ rescue NawsXml::ParseError => error
32
+ raise ArgumentError, format(BAD_EXPECTED,
33
+ error: error.message, got: got(expected))
18
34
  end
19
35
 
20
36
  def matches?(actual)
21
37
  @actual = XmlHelpers.normalize_xml(actual)
22
38
  @expected == @actual
23
39
  rescue NawsXml::ParseError => error
24
- @error_message = format(EXPECTED_XML, error: error.message)
40
+ @error_message = format(BAD_ACTUAL,
41
+ error: error.message, got: got(actual))
25
42
  false
26
43
  end
27
44
 
@@ -46,6 +63,12 @@ module RSpec
46
63
  diff.lines[0..-2].join
47
64
  end
48
65
 
66
+ def got(value)
67
+ got = value.inspect unless value.is_a?(String)
68
+ got = xml.inspect if got == ''
69
+ got
70
+ end
71
+
49
72
  end
50
73
  end
51
74
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rspec-xml_helpers
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.2
4
+ version: 1.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - The Incognito Coder
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-11-29 00:00:00.000000000 Z
11
+ date: 2018-11-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: diff-lcs