UNPKG

tee-mo-core

Version:

77 lines (47 loc) 2.14 kB
import {createStore} from '../src/index' describe('测试store的基础功能', () => { it('测试删除model', function () { const userModel = { namespace: 'user' } const orderModel = { namespace: 'order' } const store = createStore() store.addModel(userModel).addModel(orderModel).start() expect(store.reduxStore.getState()['user']).not.toBeUndefined() store.delModel('user').restart() expect(store.reduxStore.getState()['user']).toBeUndefined() }); it('测试删除一个不存在的model', function () { const store = createStore().start(); expect(() => store.delModel("test")).toThrow("model不存在,无法进行删除操作") }); it('测试清空model', function () { const user = { namespace: 'user' }, order = { namespace: 'order' }; const store = createStore(); store.addModel(user).addModel(order).start(); expect(store.reduxStore.getState()['user']).not.toBeUndefined() expect(store.reduxStore.getState()['order']).not.toBeUndefined() store.clearModel().restart() expect(store.reduxStore.getState()['user']).toBeUndefined() expect(store.reduxStore.getState()['order']).toBeUndefined() expect(store.reduxStore.getState()['@@teeMoCore']).not.toBeUndefined() }); it('测试删除默认model', function () { const store = createStore() expect(() => store.delModel('@@teeMoCore')).toThrow("[teeMo.delModel] 不可以删除一个系统默认的model , 当前传入期望删除的model的namespace为 [@@teeMoCore]") }); it('测试重复启动store', function () { const store = createStore() expect(() => store.start().start()).toThrow('[teeMo.Store] 数据仓库已经启动!') }) it('测试未启动store的情况下调用,store的restart函数', function () { const store = createStore() expect(() => store.restart()).toThrow('[teeMo.Store] 数据仓库尚未启动!') }); })