27 lines
820 B
JavaScript
27 lines
820 B
JavaScript
|
import { collection, clickable, text } from 'ember-cli-page-object';
|
||
|
import { singularize } from 'ember-inflector';
|
||
|
|
||
|
export default function (
|
||
|
selector = '[data-test-task-group]',
|
||
|
propKey = 'taskGroups'
|
||
|
) {
|
||
|
const lookupKey = `${singularize(propKey)}For`;
|
||
|
|
||
|
return {
|
||
|
[propKey]: collection(selector, {
|
||
|
name: text('[data-test-task-group-name]'),
|
||
|
count: text('[data-test-task-group-count]'),
|
||
|
volume: text('[data-test-task-group-volume]'),
|
||
|
cpu: text('[data-test-task-group-cpu]'),
|
||
|
mem: text('[data-test-task-group-mem]'),
|
||
|
disk: text('[data-test-task-group-disk]'),
|
||
|
visit: clickable('[data-test-task-group-name] a'),
|
||
|
visitRow: clickable(),
|
||
|
}),
|
||
|
|
||
|
[lookupKey]: function (name) {
|
||
|
return this[propKey].toArray().find((tg) => tg.name === name);
|
||
|
},
|
||
|
};
|
||
|
}
|