From a4bcdd1e4568c72f241fbf197e969864d7350f59 Mon Sep 17 00:00:00 2001 From: Eduardo San Martin Morote Date: Sat, 15 May 2021 15:32:56 +0200 Subject: [PATCH] test: test refs in plugins --- __tests__/storePlugins.spec.ts | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/__tests__/storePlugins.spec.ts b/__tests__/storePlugins.spec.ts index c88317b0..4bd9431b 100644 --- a/__tests__/storePlugins.spec.ts +++ b/__tests__/storePlugins.spec.ts @@ -1,5 +1,6 @@ import { createPinia, defineStore, PiniaPlugin } from '../src' import { createLocalVue, mount } from '@vue/test-utils' +import { ref, set } from '@vue/composition-api' declare module '../src' { export interface PiniaCustomProperties { @@ -7,6 +8,7 @@ declare module '../src' { // uid: App['_uid'] hasPinia: boolean idFromPlugin: Id + someRef: number } } @@ -87,4 +89,27 @@ describe('store plugins', () => { const store = useStore() expect(store.doubleN).toBe(40) }) + + it('can add refs to state', () => { + const pinia = createPinia() + const someRef = ref(0) + pinia.use(({ store }) => { + set(store, 'someRef', someRef) + set(store.$state, 'someRef', someRef) + }) + + mount({ template: '

' }, { localVue, pinia }) + + const store = useStore() + + expect(store.someRef).toBe(0) + expect(store.$state.someRef).toBe(0) + someRef.value++ + expect(store.someRef).toBe(1) + expect(store.$state.someRef).toBe(1) + store.someRef++ + expect(store.someRef).toBe(2) + expect(store.$state.someRef).toBe(2) + expect(someRef.value).toBe(2) + }) }) -- 2.47.3