mirror of
https://github.com/discourse/discourse.git
synced 2024-12-01 13:09:33 -06:00
315b9d796d
* better test helper * more reliable tests * more consistent use of data-value/data-name/title/aria-label everywhere: header and rows
86 lines
2.0 KiB
JavaScript
86 lines
2.0 KiB
JavaScript
import componentTest from 'helpers/component-test';
|
|
|
|
moduleForComponent('list-setting', {integration: true});
|
|
|
|
componentTest('default', {
|
|
template: '{{list-setting settingValue=settingValue choices=choices}}',
|
|
|
|
beforeEach() {
|
|
this.set('settingValue', 'bold|italic');
|
|
this.set('choices', ['bold', 'italic', 'underline']);
|
|
},
|
|
|
|
test(assert) {
|
|
andThen(() => {
|
|
assert.equal(selectKit().header().title(), 'bold,italic');
|
|
assert.equal(selectKit().header().value(), 'bold,italic');
|
|
});
|
|
}
|
|
});
|
|
|
|
componentTest('with empty string as value', {
|
|
template: '{{list-setting settingValue=settingValue}}',
|
|
|
|
beforeEach() {
|
|
this.set('settingValue', '');
|
|
},
|
|
|
|
test(assert) {
|
|
andThen(() => {
|
|
assert.equal(selectKit().header().value(), "");
|
|
});
|
|
}
|
|
});
|
|
|
|
componentTest('with only setting value', {
|
|
template: '{{list-setting settingValue=settingValue}}',
|
|
|
|
beforeEach() {
|
|
this.set('settingValue', 'bold|italic');
|
|
},
|
|
|
|
test(assert) {
|
|
andThen(() => {
|
|
assert.equal(selectKit().header().value(), 'bold,italic');
|
|
});
|
|
}
|
|
});
|
|
|
|
componentTest('interactions', {
|
|
template: '{{list-setting settingValue=settingValue choices=choices}}',
|
|
|
|
beforeEach() {
|
|
this.set('settingValue', 'bold|italic');
|
|
this.set('choices', ['bold', 'italic', 'underline']);
|
|
},
|
|
|
|
test(assert) {
|
|
const listSetting = selectKit();
|
|
|
|
listSetting.expand().selectRowByValue('underline');
|
|
|
|
andThen(() => {
|
|
assert.equal(listSetting.header().value(), 'bold,italic,underline');
|
|
});
|
|
|
|
listSetting.fillInFilter('strike');
|
|
|
|
andThen(() => {
|
|
assert.equal(listSetting.highlightedRow().value(), 'strike');
|
|
});
|
|
|
|
listSetting.keyboard().enter();
|
|
|
|
andThen(() => {
|
|
assert.equal(listSetting.header().value(), 'bold,italic,underline,strike');
|
|
});
|
|
|
|
listSetting.keyboard().backspace();
|
|
listSetting.keyboard().backspace();
|
|
|
|
andThen(() => {
|
|
assert.equal(listSetting.header().value(), 'bold,italic,underline');
|
|
});
|
|
}
|
|
});
|