Skip to content

Commit

Permalink
test(reactive): use vitest fn instead of counting manually (#11746)
Browse files Browse the repository at this point in the history
  • Loading branch information
coderwei99 authored Sep 2, 2024
1 parent 0387e1b commit 3de5556
Showing 1 changed file with 5 additions and 9 deletions.
14 changes: 5 additions & 9 deletions packages/reactivity/__tests__/ref.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -46,26 +46,22 @@ describe('reactivity/ref', () => {
it('ref wrapped in reactive should not track internal _value access', () => {
const a = ref(1)
const b = reactive(a)
let calls = 0
let dummy

effect(() => {
calls++
const fn = vi.fn(() => {
dummy = b.value // this will observe both b.value and a.value access
})
expect(calls).toBe(1)
effect(fn)
expect(fn).toHaveBeenCalledTimes(1)
expect(dummy).toBe(1)

// mutating a.value should only trigger effect once
calls = 0
a.value = 3
expect(calls).toBe(1)
expect(fn).toHaveBeenCalledTimes(2)
expect(dummy).toBe(3)

// mutating b.value should trigger the effect twice. (once for a.value change and once for b.value change)
calls = 0
b.value = 5
expect(calls).toBe(2)
expect(fn).toHaveBeenCalledTimes(4)
expect(dummy).toBe(5)
})

Expand Down

0 comments on commit 3de5556

Please sign in to comment.