1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- import { Store } from './Store';
-
- describe('Store', () => {
- let uut;
-
- beforeEach(() => {
- uut = new Store();
- });
-
- it('initial state', () => {
- expect(uut.getPropsForComponentId('component1')).toEqual({});
- });
-
- it('holds props by componentId', () => {
- uut.setPropsForComponentId('component1', { a: 1, b: 2 });
- expect(uut.getPropsForComponentId('component1')).toEqual({ a: 1, b: 2 });
- });
-
- it('defensive for invalid componentId and props', () => {
- uut.setPropsForComponentId('component1', undefined);
- uut.setPropsForComponentId(undefined, undefined);
- expect(uut.getPropsForComponentId('component1')).toEqual({});
- });
-
- it('holds original components classes by componentName', () => {
- const MyComponent = class {
- //
- };
- uut.setOriginalComponentClassForName('example.mycomponent', MyComponent);
- expect(uut.getOriginalComponentClassForName('example.mycomponent')).toEqual(MyComponent);
- });
-
- it('holds component refs by id', () => {
- const ref = {};
- uut.setRefForComponentId('refUniqueId', ref);
- expect(uut.getRefForComponentId('other')).toBeUndefined();
- expect(uut.getRefForComponentId('refUniqueId')).toBe(ref);
- });
-
- it('clean by id', () => {
- uut.setRefForComponentId('refUniqueId', {});
- uut.setPropsForComponentId('refUniqueId', { foo: 'bar' });
-
- uut.cleanId('refUniqueId');
-
- expect(uut.getRefForComponentId('refUniqueId')).toBeUndefined();
- expect(uut.getPropsForComponentId('refUniqueId')).toEqual({});
- });
- });
|