test(effect): add test for nested stopped effect (#417)
This commit is contained in:
parent
e98c558bf3
commit
cb97d152b8
@ -686,6 +686,28 @@ describe('reactivity/effect', () => {
|
||||
expect(onStop).toHaveBeenCalled()
|
||||
})
|
||||
|
||||
it('stop: a stopped effect is nested in a normal effect', () => {
|
||||
let dummy
|
||||
const obj = reactive({ prop: 1 })
|
||||
const runner = effect(() => {
|
||||
dummy = obj.prop
|
||||
})
|
||||
stop(runner)
|
||||
obj.prop = 2
|
||||
expect(dummy).toBe(1)
|
||||
|
||||
// observed value in inner stopped effect
|
||||
// will track outer effect as an dependency
|
||||
effect(() => {
|
||||
runner()
|
||||
})
|
||||
expect(dummy).toBe(2)
|
||||
|
||||
// notify outer effect to run
|
||||
obj.prop = 3
|
||||
expect(dummy).toBe(3)
|
||||
})
|
||||
|
||||
it('markNonReactive', () => {
|
||||
const obj = reactive({
|
||||
foo: markNonReactive({
|
||||
|
Loading…
x
Reference in New Issue
Block a user