import componentTest, { setupRenderingTest, } from "discourse/tests/helpers/component-test"; import selectKit, { setDefaultState, } from "discourse/tests/helpers/select-kit-helper"; import { discourseModule } from "discourse/tests/helpers/qunit-helpers"; import hbs from "htmlbars-inline-precompile"; discourseModule( "Integration | Component | select-kit/notifications-button", function (hooks) { setupRenderingTest(hooks); hooks.beforeEach(function () { this.set("subject", selectKit()); }); componentTest("default", { template: hbs` {{notifications-button value=value options=(hash i18nPrefix=i18nPrefix i18nPostfix=i18nPostfix ) }} `, beforeEach() { this.set("value", 1); setDefaultState(this, 1, { i18nPrefix: "pre", i18nPostfix: "post" }); }, async test(assert) { assert.ok(this.subject.header().value()); assert.ok( this.subject .header() .label() .includes(`${this.i18nPrefix}.regular${this.i18nPostfix}`), "it shows the regular choice when value is not set" ); const icon = this.subject.header().icon()[0]; assert.ok( icon.classList.contains("d-icon-d-regular"), "it shows the correct icon" ); }, }); } );