module Rails::Dom::Testing::Assertions::DomAssertions
def assert_dom_not_equal(expected, actual, message = nil, strict: false, html_version: nil)
assert_dom_not_equal expected, actual, html_version: :html5
html_version: :html4 or html_version: :html5 keyword arguments:
If you want to specify the HTML parser just for a particular assertion, pass
+Rails.application.config.dom_testing_default_html_version+.
When testing in a Rails application, the parser default can also be set by setting
Rails::Dom::Testing.default_html_version (either :html4 or :html5).
The DOMs are created using an HTML parser specified by
assert_dom_not_equal "
\nfoo\n\
", "foo
", strict: trueassert_dom_equal "
\nfoo\n\
", "foo
", strict: false# these assertions will both pass
strict: true:
and newlines). If you want stricter matching with exact matching for whitespace, pass
By default, the matcher will not pay attention to whitespace in text nodes (e.g., spaces
)
link_to("Oranges", "http://www.example.com"),
'Apples',
assert_dom_not_equal(
# assert that the referenced method does not generate the specified HTML string
The negated form of +assert_dom_equal+.
def assert_dom_not_equal(expected, actual, message = nil, strict: false, html_version: nil) expected_dom, actual_dom = fragment(expected, html_version: html_version), fragment(actual, html_version: html_version) message ||= "Expected: #{expected}\nActual: #{actual}" assert_not compare_doms(expected_dom, actual_dom, strict), message end