rspec-html-matchers 0.9.2 → 0.10.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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +19 -0
- data/README.md +6 -3
- data/features/step_definitions/steps.rb +3 -1
- data/features/support/env.rb +6 -2
- data/lib/rspec-html-matchers/have_tag.rb +157 -133
- data/lib/rspec-html-matchers/nokogiri_regexp_helper.rb +3 -5
- data/lib/rspec-html-matchers/nokogiri_text_helper.rb +3 -5
- data/lib/rspec-html-matchers/version.rb +3 -1
- data/lib/rspec-html-matchers.rb +103 -88
- data/spec/form_matchers_spec.rb +128 -126
- data/spec/have_empty_tag_spec.rb +8 -6
- data/spec/have_tag_spec.rb +202 -166
- data/spec/issues_spec.rb +17 -0
- data/spec/spec_helper.rb +2 -0
- data/spec/support/asset_helpers.rb +5 -5
- data/spec/support/raise_spec_error_helper.rb +9 -7
- metadata +25 -29
data/spec/issues_spec.rb
ADDED
@@ -0,0 +1,17 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
# frozen_string_literal: true
|
3
|
+
|
4
|
+
require 'spec_helper'
|
5
|
+
|
6
|
+
describe 'working on github issues' do
|
7
|
+
it '[seen Option Not Matching Seen Text (https://github.com/kucaahbe/rspec-html-matchers/issues/73)]' do
|
8
|
+
rendered = <<HTML
|
9
|
+
<p>
|
10
|
+
content with ignored
|
11
|
+
spaces
|
12
|
+
around
|
13
|
+
</p>
|
14
|
+
HTML
|
15
|
+
expect(rendered).to have_tag('p', :seen => 'content with ignored spaces around')
|
16
|
+
end
|
17
|
+
end
|
data/spec/spec_helper.rb
CHANGED
@@ -1,16 +1,16 @@
|
|
1
|
-
|
1
|
+
# frozen_string_literal: true
|
2
2
|
|
3
|
-
|
3
|
+
module AssetHelpers
|
4
|
+
ASSETS = File.expand_path('../../fixtures/%s.html', __FILE__)
|
4
5
|
|
5
6
|
def asset name
|
6
|
-
f = fixtures[name] ||= IO.read(ASSETS%name)
|
7
|
+
f = fixtures[name] ||= IO.read(ASSETS % name)
|
7
8
|
let(:rendered) { f }
|
8
9
|
end
|
9
10
|
|
10
11
|
private
|
11
12
|
|
12
13
|
def fixtures
|
13
|
-
@
|
14
|
+
@fixtures ||= {}
|
14
15
|
end
|
15
|
-
|
16
16
|
end
|
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
RSpec::Matchers.define :raise_spec_error do |expected_exception_msg|
|
2
4
|
define_method :actual_msg do
|
3
5
|
@actual_msg
|
@@ -8,11 +10,11 @@ RSpec::Matchers.define :raise_spec_error do |expected_exception_msg|
|
|
8
10
|
end
|
9
11
|
|
10
12
|
match do |block|
|
11
|
-
begin
|
13
|
+
begin # rubocop:disable Style/RedundantBegin
|
12
14
|
block.call
|
13
15
|
false
|
14
|
-
rescue RSpec::Expectations::ExpectationNotMetError =>
|
15
|
-
@actual_msg =
|
16
|
+
rescue RSpec::Expectations::ExpectationNotMetError => e
|
17
|
+
@actual_msg = e.message
|
16
18
|
|
17
19
|
case expected_exception_msg
|
18
20
|
when String
|
@@ -28,9 +30,9 @@ RSpec::Matchers.define :raise_spec_error do |expected_exception_msg|
|
|
28
30
|
|
29
31
|
supports_block_expectations
|
30
32
|
|
31
|
-
failure_message do |
|
33
|
+
failure_message do |_block|
|
32
34
|
if actual_msg
|
33
|
-
<<MSG
|
35
|
+
<<MSG # rubocop:disable Layout/IndentationWidth
|
34
36
|
expected RSpec::Expectations::ExpectationNotMetError with message:
|
35
37
|
#{expected_exception_msg}
|
36
38
|
|
@@ -38,12 +40,12 @@ got:
|
|
38
40
|
#{actual_msg}
|
39
41
|
|
40
42
|
Diff:
|
41
|
-
#{RSpec::Support::Differ.new.diff_as_string(actual_msg,expected_exception_msg.to_s)}
|
43
|
+
#{RSpec::Support::Differ.new.diff_as_string(actual_msg, expected_exception_msg.to_s)}
|
42
44
|
MSG
|
43
45
|
elsif catched_exception
|
44
46
|
"expected RSpec::Expectations::ExpectationNotMetError, but was #{catched_exception.inspect}"
|
45
47
|
else
|
46
|
-
|
48
|
+
'expected RSpec::Expectations::ExpectationNotMetError, but was no exception'
|
47
49
|
end
|
48
50
|
end
|
49
51
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rspec-html-matchers
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.10.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- kucaahbe
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2022-07-26 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rspec
|
@@ -17,9 +17,6 @@ dependencies:
|
|
17
17
|
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
19
|
version: 3.0.0.a
|
20
|
-
- - "<"
|
21
|
-
- !ruby/object:Gem::Version
|
22
|
-
version: '4'
|
23
20
|
type: :runtime
|
24
21
|
prerelease: false
|
25
22
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -27,9 +24,6 @@ dependencies:
|
|
27
24
|
- - ">="
|
28
25
|
- !ruby/object:Gem::Version
|
29
26
|
version: 3.0.0.a
|
30
|
-
- - "<"
|
31
|
-
- !ruby/object:Gem::Version
|
32
|
-
version: '4'
|
33
27
|
- !ruby/object:Gem::Dependency
|
34
28
|
name: nokogiri
|
35
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -143,37 +137,37 @@ dependencies:
|
|
143
137
|
- !ruby/object:Gem::Version
|
144
138
|
version: '10'
|
145
139
|
- !ruby/object:Gem::Dependency
|
146
|
-
name:
|
140
|
+
name: yard
|
147
141
|
requirement: !ruby/object:Gem::Requirement
|
148
142
|
requirements:
|
149
|
-
- - "
|
143
|
+
- - ">="
|
150
144
|
- !ruby/object:Gem::Version
|
151
|
-
version: '
|
145
|
+
version: '0'
|
152
146
|
type: :development
|
153
147
|
prerelease: false
|
154
148
|
version_requirements: !ruby/object:Gem::Requirement
|
155
149
|
requirements:
|
156
|
-
- - "
|
150
|
+
- - ">="
|
157
151
|
- !ruby/object:Gem::Version
|
158
|
-
version: '
|
152
|
+
version: '0'
|
159
153
|
- !ruby/object:Gem::Dependency
|
160
|
-
name:
|
154
|
+
name: rubocop
|
161
155
|
requirement: !ruby/object:Gem::Requirement
|
162
156
|
requirements:
|
163
|
-
- -
|
157
|
+
- - '='
|
164
158
|
- !ruby/object:Gem::Version
|
165
|
-
version:
|
159
|
+
version: 0.76.0
|
166
160
|
type: :development
|
167
161
|
prerelease: false
|
168
162
|
version_requirements: !ruby/object:Gem::Requirement
|
169
163
|
requirements:
|
170
|
-
- -
|
164
|
+
- - '='
|
171
165
|
- !ruby/object:Gem::Version
|
172
|
-
version:
|
173
|
-
description: 'Nokogiri based ''have_tag'' and ''with_tag'' matchers for
|
166
|
+
version: 0.76.0
|
167
|
+
description: 'Nokogiri based ''have_tag'' and ''with_tag'' matchers for RSpec. Does
|
174
168
|
not depend on assert_select matcher, provides useful error messages.
|
175
169
|
|
176
|
-
'
|
170
|
+
'
|
177
171
|
email:
|
178
172
|
- kucaahbe@ukr.net
|
179
173
|
- randoum@gmail.com
|
@@ -196,6 +190,7 @@ files:
|
|
196
190
|
- spec/form_matchers_spec.rb
|
197
191
|
- spec/have_empty_tag_spec.rb
|
198
192
|
- spec/have_tag_spec.rb
|
193
|
+
- spec/issues_spec.rb
|
199
194
|
- spec/spec_helper.rb
|
200
195
|
- spec/support/asset_helpers.rb
|
201
196
|
- spec/support/raise_spec_error_helper.rb
|
@@ -203,7 +198,7 @@ homepage: https://github.com/kucaahbe/rspec-html-matchers
|
|
203
198
|
licenses:
|
204
199
|
- MIT
|
205
200
|
metadata: {}
|
206
|
-
post_install_message:
|
201
|
+
post_install_message:
|
207
202
|
rdoc_options: []
|
208
203
|
require_paths:
|
209
204
|
- lib
|
@@ -218,17 +213,18 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
218
213
|
- !ruby/object:Gem::Version
|
219
214
|
version: '0'
|
220
215
|
requirements: []
|
221
|
-
rubygems_version: 3.
|
222
|
-
signing_key:
|
216
|
+
rubygems_version: 3.3.7
|
217
|
+
signing_key:
|
223
218
|
specification_version: 4
|
224
|
-
summary: Nokogiri based 'have_tag' and 'with_tag' matchers for
|
219
|
+
summary: Nokogiri based 'have_tag' and 'with_tag' matchers for RSpec
|
225
220
|
test_files:
|
221
|
+
- spec/form_matchers_spec.rb
|
222
|
+
- spec/have_empty_tag_spec.rb
|
226
223
|
- spec/have_tag_spec.rb
|
224
|
+
- spec/issues_spec.rb
|
225
|
+
- spec/spec_helper.rb
|
227
226
|
- spec/support/asset_helpers.rb
|
228
227
|
- spec/support/raise_spec_error_helper.rb
|
229
|
-
- spec/spec_helper.rb
|
230
|
-
- spec/have_empty_tag_spec.rb
|
231
|
-
- spec/form_matchers_spec.rb
|
232
|
-
- features/support/env.rb
|
233
228
|
- features/step_definitions/steps.rb
|
229
|
+
- features/support/env.rb
|
234
230
|
- features/js_generated_content.feature
|