discourse/test/javascripts/components/topic-footer-mobile-dropdown-test.js.es6
Joffrey JAFFEUX 315b9d796d
select-kit refactoring
* better test helper
* more reliable tests
* more consistent use of data-value/data-name/title/aria-label everywhere: header and rows
2017-12-22 13:08:12 +01:00

45 lines
1.1 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import componentTest from 'helpers/component-test';
import Topic from 'discourse/models/topic';
const buildTopic = function() {
return Topic.create({
id: 1234,
title: 'Qunit Test Topic'
});
};
moduleForComponent('topic-footer-mobile-dropdown', {
integration: true,
beforeEach: function() {
this.set('subject', selectKit());
}
});
componentTest('default', {
template: '{{topic-footer-mobile-dropdown topic=topic}}',
beforeEach() {
this.set('topic', buildTopic());
},
test(assert) {
this.get('subject').expand();
andThen(() => {
assert.equal(this.get('subject').header().title(), 'Topic Controls');
assert.equal(this.get('subject').header().value(), null);
assert.equal(this.get('subject').rowByIndex(0).name(), 'Bookmark');
assert.equal(this.get('subject').rowByIndex(1).name(), 'Share');
assert.notOk(
this.get('subject').selectedRow().exists(),
'it doesnt preselect first row'
);
});
this.get('subject').selectRowByValue('share');
andThen(() => {
assert.equal(this.get('value'), null, 'it resets the value');
});
}
});