diff --git a/packages/language-select/src/demo.js b/packages/language-select/src/demo.js index 6926c4fe33017d61d4d65b79d79086ae2499f59a..dc7b964257e3b86c6f0a67b746d4083f701cd5c4 100644 --- a/packages/language-select/src/demo.js +++ b/packages/language-select/src/demo.js @@ -6,6 +6,7 @@ class LanguageSelectDemo extends LitElement { constructor() { super(); this.lang = 'de'; + this.handleChange = this.handleChange.bind(this); } static get properties() { @@ -20,11 +21,11 @@ class LanguageSelectDemo extends LitElement { connectedCallback() { super.connectedCallback(); - window.addEventListener('vpu-language-changed', this.handleChange.bind(this)); + window.addEventListener('vpu-language-changed', this.handleChange); } disconnectedCallback() { - windows.removeEventListener('vpu-language-changed', this.handleChange.bind(this)); + window.removeEventListener('vpu-language-changed', this.handleChange); super.disconnectedCallback(); } diff --git a/packages/language-select/test/unit.js b/packages/language-select/test/unit.js index 37bd3c1ab3184453251ad667e9290712379a1946..ea01a63ee3164b6806bcc5df26204f9e53a28a43 100644 --- a/packages/language-select/test/unit.js +++ b/packages/language-select/test/unit.js @@ -1,4 +1,5 @@ -import '../src/language-select'; +import '../src/language-select.js'; +import '../src/demo.js'; describe('vpu-language-select basics', () => { let node; @@ -17,3 +18,21 @@ describe('vpu-language-select basics', () => { expect(node).to.have.property('shadowRoot'); }); }); + +describe('vpu-language-select demo', () => { + let node; + + beforeEach(async () => { + node = document.createElement('vpu-language-select-demo'); + document.body.appendChild(node); + await node.updateComplete; + }); + + afterEach(() => { + node.remove(); + }); + + it('should render', () => { + expect(node).to.have.property('shadowRoot'); + }); +});