import { localizeTearDown } from '@lion/localize/test-helpers'; import { expect, fixture as _fixture } from '@open-wc/testing'; import { html } from 'lit/static-html.js'; import '@lion/checkbox-group/define'; /** * @typedef {import('../src/LionCheckboxGroup').LionCheckboxGroup} LionCheckboxGroup * @typedef {import('@lion/core').TemplateResult} TemplateResult */ const fixture = /** @type {(arg: TemplateResult) => Promise} */ (_fixture); beforeEach(() => { localizeTearDown(); }); describe('', () => { describe('resetGroup', () => { // TODO move to FormGroupMixin test suite and let CheckboxGroup make use of them it('restores default values of arrays if changes were made', async () => { const el = await fixture(html` `); el.formElements[0].checked = true; expect(el.modelValue).to.deep.equal(['Archimedes']); el.resetGroup(); expect(el.modelValue).to.deep.equal([]); }); it('restores default values of arrays if changes were made', async () => { const el = await fixture(html` `); el.formElements[0].checked = true; expect(el.modelValue).to.deep.equal(['Archimedes', 'Francis Bacon']); el.resetGroup(); expect(el.modelValue).to.deep.equal(['Francis Bacon']); el.formElements[2].checked = true; expect(el.modelValue).to.deep.equal(['Francis Bacon', 'Marie Curie']); el.resetGroup(); expect(el.modelValue).to.deep.equal(['Francis Bacon']); }); }); it('is accessible', async () => { const el = await fixture(html` `); await expect(el).to.be.accessible(); }); it('is accessible when pre-selected', async () => { const el = await fixture(html` `); await expect(el).to.be.accessible(); }); it('is accessible when disabled', async () => { const el = await fixture(html` `); await expect(el).to.be.accessible(); }); });