Methods

Table of Contents

value

Parameters

  • selector string CSS selector of the element to check
  • userOptions (optional, default {})
  • options Object Additional options
    • options.scope string Nests provided scope within parent’s scope
    • options.resetScope boolean Override parent’s scope
    • options.at number Reduce the set of matched elements to the one at the specified index
    • options.multiple boolean If set, the function will return an array of values
    • options.testContainer string Context where to search elements in the DOM

Examples

// <input value="Lorem ipsum">

import { create, value } from 'ember-cli-page-object';

const page = create({
  value: value('input')
});

assert.equal(page.value, 'Lorem ipsum');
// <div contenteditable="true"><b>Lorem ipsum</b></div>

import { create, value } from 'ember-cli-page-object';

const page = create({
  value: value('[contenteditable]')
});

assert.equal(page.value, '<b>Lorem ipsum</b>');
// <input value="lorem">
// <input value="ipsum">

import { create, value } from 'ember-cli-page-object';

const page = create({
  value: value('input', { multiple: true })
});

assert.deepEqual(page.value, ['lorem', 'ipsum']);
// <div><input value="lorem"></div>
// <div class="scope"><input value="ipsum"></div>

import { create, value } from 'ember-cli-page-object';

const page = create({
  value: value('input', { scope: '.scope' })
});

assert.equal(page.value, 'ipsum');
// <div><input value="lorem"></div>
// <div class="scope"><input value="ipsum"></div>

import { create, value } from 'ember-cli-page-object';

const page = create({
  scope: '.scope',
  value: value('input')
});

assert.equal(page.value, 'ipsum');
  • Throws any Will throw an error if no element matches selector
  • Throws any Will throw an error if multiple elements are matched by selector and multiple option is not set

Returns Descriptor