Once installed the DOM element assertions are available at assert.dom(...).*
:
Parameters
target
(string | HTMLElement) A CSS selector that can be used to find elements usingquerySelector()
, or an HTMLElement (Not all assertions support both target types.) (optional, defaultrootElement
ordocument
)rootElement
HTMLElement? The root element of the DOM in which to search for thetarget
(optional, defaultdocument
)
Examples
test('the title exists', function(assert) {
assert.dom('#title').exists();
});
- See: #doesNotExist
Assert an HTMLElement (or multiple) matching the selector
exists.
Parameters
Examples
assert.dom('#title').exists();
assert.dom('.choice').exists({ count: 4 });
- See: #exists
Assert an HTMLElement matching the selector
does not exists.
Parameters
message
string?
Examples
assert.dom('.should-not-exist').doesNotExist();
- See: #isNotChecked
Assert that the HTMLElement or an HTMLElement matching the
selector
is currently checked.
Parameters
message
string?
Examples
assert.dom('input.active').isChecked();
- See: #isChecked
Assert that the HTMLElement or an HTMLElement matching the
selector
is currently unchecked.
Parameters
message
string?
Examples
assert.dom('input.active').isNotChecked();
- See: #isNotFocused
Assert that the HTMLElement or an HTMLElement matching the
selector
is currently focused.
Parameters
message
string?
Examples
assert.dom('input.email').isFocused();
- See: #isFocused
Assert that the HTMLElement or an HTMLElement matching the
selector
is not currently focused.
Parameters
message
string?
Examples
assert.dom('input[type="password"]').isNotFocused();
- See: #isNotRequired
Assert that the HTMLElement or an HTMLElement matching the
selector
is currently required.
Parameters
message
string?
Examples
assert.dom('input[type="text"]').isRequired();
- See: #isRequired
Assert that the HTMLElement or an HTMLElement matching the
selector
is currently not required.
Parameters
message
string?
Examples
assert.dom('input[type="text"]').isNotRequired();
Assert that the HTMLElement has an attribute with the provided name
and optionally checks if the attribute value
matches the provided text
or regular expression.
Parameters
Examples
assert.dom('input.password-input').hasAttribute('type', 'password');
- See: #hasAttribute
Assert that the HTMLElement has no attribute with the provided name
.
Aliases: hasNoAttribute
, lacksAttribute
Parameters
Examples
assert.dom('input.username').hasNoAttribute('disabled');
- See: #doesNotHaveClass
Assert that the HTMLElement has the expected
CSS class using
classList
.
Parameters
Examples
assert.dom('input[type="password"]').hasClass('secret-password-input');
- See: #hasClass
Assert that the HTMLElement does not have the expected
CSS class using
classList
.
Aliases: hasNoClass
, lacksClass
Parameters
Examples
assert.dom('input[type="password"]').doesNotHaveClass('username-input');
- See: #includesText
Assert that the text of the HTMLElement or an HTMLElement
matching the selector
matches the expected
text, using the
textContent
attribute and stripping/collapsing whitespace.
expected
can also be a regular expression.
Parameters
Examples
// <h2 id="title">
// Welcome to <b>QUnit</b>
// </h2>
assert.dom('#title').hasText('Welcome to QUnit');
assert.dom('.foo').hasText(/[12]\d{3}/);
- See: #hasText
Assert that the text of the HTMLElement or an HTMLElement
matching the selector
contains the given text
, using the
textContent
attribute.
Aliases: containsText
, hasTextContaining
Parameters
Examples
assert.dom('#title').includesText('Welcome');
Assert that the text of the HTMLElement or an HTMLElement
matching the selector
does not include the given text
, using the
textContent
attribute.
Aliases: doesNotContainText
, doesNotHaveTextContaining
Parameters
Examples
assert.dom('#title').doesNotIncludeText('Welcome');
- See: #hasAnyValue
- See: #hasNoValue
Assert that the value
property of an HTMLInputElement matches
the expected
text or regular expression.
If no expected
value is provided, the assertion will fail if the
value
is an empty string.
Parameters
Examples
assert.dom('input.username').hasValue('HSimpson');
- See: #hasValue
- See: #hasNoValue
Assert that the value
property of an HTMLInputElement is not empty.
Parameters
message
string?
Examples
assert.dom('input.username').hasAnyValue();
- See: #hasValue
- See: #hasAnyValue
Assert that the value
property of an HTMLInputElement is empty.
Aliases: lacksValue
Parameters
message
string?
Examples
assert.dom('input.username').hasNoValue();