@serenity-js/web
Version:
Serenity/JS Screenplay Pattern library offering a flexible, web driver-agnostic approach for interacting with web-based user interfaces and components, suitable for various testing contexts
26 lines • 1.49 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.isSelected = isSelected;
const assertions_1 = require("@serenity-js/assertions");
const core_1 = require("@serenity-js/core");
const isElementSelected = core_1.Expectation.define('isSelected', 'become selected', (actual) => actual.isSelected());
/**
* [`Expectation`](https://serenity-js.org/api/core/class/Expectation/) that an `<option>` or `<input>` element is selected, which means it resolves to `true` when:
* - the element [is present](https://serenity-js.org/api/assertions/function/isPresent/) in the [DOM](https://developer.mozilla.org/en-US/docs/Web/API/Document_Object_Model)
* - [`PageElement.isSelected`](https://serenity-js.org/api/web/class/PageElement/#isSelected) resolves to `true`
*
* If the above conditions are not met, the expectation resolves to `false`.
*
* ## Learn more
* - [`PageElement.isSelected`](https://serenity-js.org/api/web/class/PageElement/#isSelected)
* - [`Expectation`](https://serenity-js.org/api/core/class/Expectation/)
* - [`Check`](https://serenity-js.org/api/core/class/Check/)
* - [`Ensure`](https://serenity-js.org/api/assertions/class/Ensure/)
* - [`Wait`](https://serenity-js.org/api/core/class/Wait/)
*
* @group Expectations
*/
function isSelected() {
return core_1.Expectation.to('become selected').soThatActual((0, assertions_1.and)((0, assertions_1.isPresent)(), isElementSelected()));
}
//# sourceMappingURL=isSelected.js.map
;