Skip to content

Commit 92c318d

Browse files
committed
avoid raising
1 parent 085ef17 commit 92c318d

File tree

2 files changed

+4
-9
lines changed

2 files changed

+4
-9
lines changed

lib/rails/dom/testing/assertions/selector_assertions.rb

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,6 @@
44
module Rails
55
module Dom
66
module Testing
7-
MissingNodeError = Class.new(StandardError)
8-
97
module Assertions
108
# Adds the +assert_dom+ method for use in Rails functional
119
# test cases, which can be used to make assertions on the response HTML of a controller
@@ -298,10 +296,9 @@ def nest_selection(selection)
298296
def nodeset(node)
299297
if node.is_a?(Nokogiri::XML::NodeSet)
300298
node
301-
elsif node.present?
302-
Nokogiri::XML::NodeSet.new(node.document, [node])
303299
else
304-
raise MissingNodeError, 'No node/document found. Did you return a blank body in your response?'
300+
node ||= Nokogiri::HTML::Document.parse("")
301+
Nokogiri::XML::NodeSet.new(node.document, [node])
305302
end
306303
end
307304
end

test/selector_assertions_test.rb

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -324,10 +324,8 @@ def test_assert_select_with_extra_argument
324324

325325
def test_assert_select_on_blank_response
326326
render_html ""
327-
assert_raises Rails::Dom::Testing::MissingNodeError do
328-
assert_select "div", 0
329-
end
330-
assert_raises Rails::Dom::Testing::MissingNodeError do
327+
assert_select "div", 0
328+
assert_failure(/Expected exactly 1 element matching \"div\", found 0./) do
331329
assert_select "div", 1
332330
end
333331
end

0 commit comments

Comments
 (0)