UNPKG

@itexpert-dev/components-key-value-storage

Version:

wrapper for components storage

82 lines (65 loc) 3.06 kB
import {ComponentsKeyValueStorage} from './componentsKeyValueStorage' import {IAppendComponentParams} from "./IAppendComponentParams"; import {Component} from "@angular/core"; describe("tests for component key-value storage", ()=>{ let testStorage : any; let testKey = 'test'; beforeEach(function() { testStorage = new ComponentsKeyValueStorage(); }); describe('get component from store', ()=>{ it('should try get data from inner store by key',()=>{ spyOn(testStorage.storage, 'get').and.returnValue('value'); let result = testStorage.getComponent(testKey); // expect(testStorage.storage.get).toHaveBeenCalled(); expect(testStorage.storage.get).toHaveBeenCalledWith(testKey); expect(testStorage.storage.get.calls.argsFor(0)).toEqual([testKey]); expect(result).toBe('value'); }) }); describe('remove component from store', ()=>{ it('should try remove component from inner store by key',()=>{ spyOn(testStorage.storage, 'remove'); let result = testStorage.removeComponent(testKey); // expect(testStorage.storage.remove).toHaveBeenCalled(); expect(testStorage.storage.remove).toHaveBeenCalledWith(testKey); }) }); describe('add component to store', ()=>{ it('should try add components to inner store ',()=>{ let comp1Name = 'comp1'; let comp1 : IAppendComponentParams = { componentName: comp1Name, force: true, component: { selector: comp1Name} as Component }; let comp2Name = 'comp2'; let comp2 : IAppendComponentParams = { componentName: comp2Name, force: true, component: { selector: comp2Name} as Component }; let comp3Name = 'comp3'; let comp3 : IAppendComponentParams = { componentName: comp3Name, force: true, component: { selector: comp3Name} as Component }; spyOn(testStorage.storage, 'add'); testStorage.addComponent(comp1, comp2, comp3); // expect(testStorage.storage.add.calls.count()).toBe(3); let args1stCall = testStorage.storage.add.calls.argsFor(0); expect(args1stCall[0].value.selector).toEqual(comp1Name); expect(args1stCall[0].key).toEqual(comp1Name); let args2stCall = testStorage.storage.add.calls.argsFor(1); expect(args2stCall[0].value.selector).toEqual(comp2Name); expect(args2stCall[0].key).toEqual(comp2Name); let args3stCall = testStorage.storage.add.calls.argsFor(2); expect(args3stCall[0].value.selector).toEqual(comp3Name); expect(args3stCall[0].key).toEqual(comp3Name); }) }); });