xqsr3 0.22.2 → 0.22.4
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 +5 -5
- data/lib/xqsr3/version.rb +2 -2
- data/lib/xqsr3/xml/utilities/compare.rb +22 -1
- data/test/unit/xml/utilities/tc_compare.rb +57 -0
- metadata +7 -8
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: f9ba5e26e05f852e8093d7fad6e1ea1b3aea26e596bac32483b5a0c0ec6176a5
|
4
|
+
data.tar.gz: 034b29eb4f8ce8ff96bfe05d98adcdca2c255e8f54ae295daafb00bce93ee942
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 634f55ac0143b7285caf59a41b06b96f3bc4aaacaa343dc68fdad6372916de3b8d58f5adf23179948ba5bef665c4da1fe6abe285d51925655ffc920f68aa59a1
|
7
|
+
data.tar.gz: 90b016538c14a6d7f24e2d3b0e379eacf4b1e33be938ba5f4a7adfa016848d0482d973ab99ae24293c4fecf98839d7c8d799b371f825caef982cd5cb7302086d
|
data/lib/xqsr3/version.rb
CHANGED
@@ -5,7 +5,7 @@
|
|
5
5
|
# Purpose: Version for Xqsr3 library
|
6
6
|
#
|
7
7
|
# Created: 3rd April 2016
|
8
|
-
# Updated:
|
8
|
+
# Updated: 28th February 2018
|
9
9
|
#
|
10
10
|
# Home: http://github.com/synesissoftware/xqsr3
|
11
11
|
#
|
@@ -50,7 +50,7 @@
|
|
50
50
|
module Xqsr3
|
51
51
|
|
52
52
|
# Current version of the Xqsr3 library
|
53
|
-
VERSION = '0.22.
|
53
|
+
VERSION = '0.22.4'
|
54
54
|
|
55
55
|
private
|
56
56
|
VERSION_PARTS_ = VERSION.split(/[.]/).collect { |n| n.to_i } # :nodoc:
|
@@ -6,7 +6,7 @@
|
|
6
6
|
# module
|
7
7
|
#
|
8
8
|
# Created: 30th July 2017
|
9
|
-
# Updated:
|
9
|
+
# Updated: 28th February 2018
|
10
10
|
#
|
11
11
|
# Home: http://github.com/synesissoftware/xqsr3
|
12
12
|
#
|
@@ -170,6 +170,7 @@ module Compare
|
|
170
170
|
ignore_attributes: false,
|
171
171
|
ignore_attribute_order: true,
|
172
172
|
ignore_child_node_order: true,
|
173
|
+
ignore_xml_declarations: true,
|
173
174
|
normalise_whitespace: true,
|
174
175
|
# normalize_whitespace: true,
|
175
176
|
validate_params: true,
|
@@ -244,6 +245,7 @@ module Compare
|
|
244
245
|
# +:equate_nil_and_empty+
|
245
246
|
# +:ignore_attributes+
|
246
247
|
# +:ignore_attribute_order+
|
248
|
+
# +:ignore_xml_declarations+
|
247
249
|
# +:normalise_whitespace+
|
248
250
|
# +:normalize_whitespace+
|
249
251
|
# +:validate_params+
|
@@ -289,6 +291,25 @@ module Compare
|
|
289
291
|
rhs = Nokogiri::XML(rhs) if ::String === rhs
|
290
292
|
|
291
293
|
|
294
|
+
|
295
|
+
# deal with XML Declaration(s)
|
296
|
+
|
297
|
+
if options[:ignore_xml_declarations]
|
298
|
+
|
299
|
+
if ::Nokogiri::XML::Document === lhs
|
300
|
+
|
301
|
+
lhs_root = lhs.root
|
302
|
+
lhs = lhs_root if lhs_root
|
303
|
+
end
|
304
|
+
|
305
|
+
if ::Nokogiri::XML::Document === rhs
|
306
|
+
|
307
|
+
rhs_root = rhs.root
|
308
|
+
rhs = rhs_root if rhs_root
|
309
|
+
end
|
310
|
+
end
|
311
|
+
|
312
|
+
|
292
313
|
self.xml_compare_nodes_ lhs, rhs, options
|
293
314
|
end
|
294
315
|
|
@@ -127,5 +127,62 @@ END_OF_rhs
|
|
127
127
|
assert r.same?, "#{r.details}"
|
128
128
|
end
|
129
129
|
|
130
|
+
def test_different_declarations_and_dont_ignore
|
131
|
+
|
132
|
+
lhs_str = <<END_OF_lhs_doc
|
133
|
+
<?xml version="1.0"?>
|
134
|
+
<outer>
|
135
|
+
<mid>
|
136
|
+
<inner>some text</inner>
|
137
|
+
</mid>
|
138
|
+
</outer>
|
139
|
+
END_OF_lhs_doc
|
140
|
+
|
141
|
+
rhs_str = <<END_OF_rhs_doc
|
142
|
+
<?xml version="1.0"?>
|
143
|
+
<mid>
|
144
|
+
<inner>some text</inner>
|
145
|
+
</mid>
|
146
|
+
END_OF_rhs_doc
|
147
|
+
|
148
|
+
lhs_doc = Nokogiri::XML lhs_str
|
149
|
+
rhs_doc = Nokogiri::XML rhs_str
|
150
|
+
|
151
|
+
expected = rhs_doc
|
152
|
+
actual = lhs_doc.at_xpath('/outer/mid')
|
153
|
+
|
154
|
+
r = xml_compare expected, actual, normalise_whitespace: true, ignore_xml_declarations: false
|
155
|
+
|
156
|
+
assert !r.same?
|
157
|
+
end
|
158
|
+
|
159
|
+
def test_different_declarations_and_do_ignore
|
160
|
+
|
161
|
+
lhs_str = <<END_OF_lhs_doc
|
162
|
+
<?xml version="1.0"?>
|
163
|
+
<outer>
|
164
|
+
<mid>
|
165
|
+
<inner>some text</inner>
|
166
|
+
</mid>
|
167
|
+
</outer>
|
168
|
+
END_OF_lhs_doc
|
169
|
+
|
170
|
+
rhs_str = <<END_OF_rhs_doc
|
171
|
+
<?xml version="1.0"?>
|
172
|
+
<mid>
|
173
|
+
<inner>some text</inner>
|
174
|
+
</mid>
|
175
|
+
END_OF_rhs_doc
|
176
|
+
|
177
|
+
lhs_doc = Nokogiri::XML lhs_str
|
178
|
+
rhs_doc = Nokogiri::XML rhs_str
|
179
|
+
|
180
|
+
expected = rhs_doc
|
181
|
+
actual = lhs_doc.at_xpath('/outer/mid')
|
182
|
+
|
183
|
+
r = xml_compare expected, actual, normalise_whitespace: true, ignore_xml_declarations: true
|
184
|
+
|
185
|
+
assert r.same?, "#{r.details}"
|
186
|
+
end
|
130
187
|
end
|
131
188
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: xqsr3
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.22.
|
4
|
+
version: 0.22.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Matt Wilson
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-02-
|
11
|
+
date: 2018-02-28 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: |
|
14
14
|
eXtensions by fine Quantum for Standard Ruby and 3rd-party libraries is a
|
@@ -128,7 +128,7 @@ files:
|
|
128
128
|
- test/unit/xml/utilities/ts_all.rb
|
129
129
|
homepage: http://github.com/synesissoftware/xqsr3
|
130
130
|
licenses:
|
131
|
-
- 3-
|
131
|
+
- BSD-3-Clause
|
132
132
|
metadata: {}
|
133
133
|
post_install_message:
|
134
134
|
rdoc_options: []
|
@@ -136,19 +136,18 @@ require_paths:
|
|
136
136
|
- lib
|
137
137
|
required_ruby_version: !ruby/object:Gem::Requirement
|
138
138
|
requirements:
|
139
|
-
- -
|
139
|
+
- - "~>"
|
140
140
|
- !ruby/object:Gem::Version
|
141
|
-
version: '0'
|
141
|
+
version: '2.0'
|
142
142
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
143
143
|
requirements:
|
144
|
-
- -
|
144
|
+
- - ">="
|
145
145
|
- !ruby/object:Gem::Version
|
146
146
|
version: '0'
|
147
147
|
requirements: []
|
148
148
|
rubyforge_project:
|
149
|
-
rubygems_version: 2.
|
149
|
+
rubygems_version: 2.7.5
|
150
150
|
signing_key:
|
151
151
|
specification_version: 4
|
152
152
|
summary: xqsr3
|
153
153
|
test_files: []
|
154
|
-
has_rdoc:
|