discourse/test/javascripts/components/d-button-test.js

Failed to ignore revisions in .git-blame-ignore-revs.

57 lines
1.5 KiB
JavaScript
Raw Normal View History

2018-06-15 11:03:24 -04:00
import componentTest from "helpers/component-test";
moduleForComponent("d-button", { integration: true });
2017-08-01 15:33:31 -04:00
2018-06-15 11:03:24 -04:00
componentTest("icon only button", {
2017-08-01 16:06:51 -04:00
template: '{{d-button icon="plus" tabindex="3"}}',
2017-08-01 15:33:31 -04:00
test(assert) {
2018-06-15 11:03:24 -04:00
assert.ok(
find("button.btn.btn-icon.no-text").length,
2018-06-15 11:03:24 -04:00
"it has all the classes"
);
assert.ok(find("button .d-icon.d-icon-plus").length, "it has the icon");
assert.equal(find("button").attr("tabindex"), "3", "it has the tabindex");
2017-08-01 15:33:31 -04:00
}
});
2018-06-15 11:03:24 -04:00
componentTest("icon and text button", {
2017-08-01 15:33:31 -04:00
template: '{{d-button icon="plus" label="topic.create"}}',
test(assert) {
2018-06-15 11:03:24 -04:00
assert.ok(
find("button.btn.btn-icon-text").length,
2018-06-15 11:03:24 -04:00
"it has all the classes"
);
assert.ok(find("button .d-icon.d-icon-plus").length, "it has the icon");
assert.ok(find("button span.d-button-label").length, "it has the label");
2017-08-01 15:33:31 -04:00
}
});
2018-06-15 11:03:24 -04:00
componentTest("text only button", {
2017-08-01 15:33:31 -04:00
template: '{{d-button label="topic.create"}}',
test(assert) {
assert.ok(find("button.btn.btn-text").length, "it has all the classes");
assert.ok(find("button span.d-button-label").length, "it has the label");
2017-08-01 15:33:31 -04:00
}
});
componentTest("form attribute", {
template: '{{d-button form="login-form"}}',
test(assert) {
assert.ok(exists("button[form=login-form]"), "it has the form attribute");
}
});
componentTest("link-styled button", {
template: '{{d-button display="link"}}',
test(assert) {
assert.ok(
find("button.btn-link:not(.btn)").length,
"it has the right classes"
);
}
});