Skip to content

Commit 4791c70

Browse files
committed
Add test
1 parent a069331 commit 4791c70

File tree

1 file changed

+35
-0
lines changed

1 file changed

+35
-0
lines changed

packages/vanilla-renderers/test/renderers/CategorizationRenderer.test.tsx

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -386,4 +386,39 @@ describe('Categorization renderer', () => {
386386
const div: HTMLDivElement = wrapper.find('.categorization').getDOMNode();
387387
expect(div.hidden).toBe(false);
388388
});
389+
390+
test('reset selected category on schema change', () => {
391+
const uischema: Categorization = {
392+
type: 'Categorization',
393+
label: '',
394+
elements: [
395+
{
396+
type: 'Category',
397+
label: 'B',
398+
elements: [],
399+
},
400+
],
401+
};
402+
const core = initCore(fixture.schema, fixture.uischema, fixture.data);
403+
404+
wrapper = mount(
405+
<JsonFormsStateProvider initState={{ renderers: vanillaRenderers, core }}>
406+
<CategorizationRenderer
407+
schema={fixture.schema}
408+
uischema={fixture.uischema}
409+
/>
410+
</JsonFormsStateProvider>
411+
);
412+
413+
let firstItem = wrapper.find('li').at(0);
414+
firstItem.simulate('click');
415+
expect(firstItem.hasClass('selected')).toBe(true);
416+
417+
core.uischema = uischema;
418+
wrapper.setProps({ initState: { renderers: vanillaRenderers, core } });
419+
wrapper.update();
420+
421+
firstItem = wrapper.find('li').at(0);
422+
expect(firstItem.hasClass('selected')).toBe(false);
423+
});
389424
});

0 commit comments

Comments
 (0)