1
0
mirror of synced 2026-05-21 01:36:28 +08:00

fix: use StorageSerializers.set + triggerRef for Set reactivity

- Use @vueuse/core StorageSerializers.set for proper Set serialization
- Add triggerRef after Set mutations (add/delete/clear) for Vue reactivity
- Mock useStorage in test setup to avoid localStorage state pollution
This commit is contained in:
YunYouJun
2026-04-13 01:41:14 +08:00
parent 7028efeb5e
commit 6459561957
2 changed files with 21 additions and 8 deletions

View File

@@ -1,4 +1,5 @@
import { vi } from 'vitest'
import { ref } from 'vue'
import 'fake-indexeddb/auto'
// Mock useScriptGoogleTagManager globally
@@ -10,6 +11,17 @@ vi.stubGlobal('useScriptGoogleTagManager', () => ({
},
}))
// Mock @vueuse/core useStorage to use plain ref (no localStorage) in tests
vi.mock('@vueuse/core', async () => {
const actual = await vi.importActual('@vueuse/core')
return {
...actual,
useStorage: (_key: string, defaultValue: unknown) => ref(
typeof defaultValue === 'function' ? defaultValue() : defaultValue,
),
}
})
// Mock onMounted to prevent Vue warnings in tests
vi.mock('vue', async () => {
const actual = await vi.importActual('vue')