mirror of
https://github.com/centau/vide.git
synced 2026-08-20 14:41:37 +00:00
simplified test case and remove error
This commit is contained in:
parent
d341eff5c8
commit
a44fa339d5
3 changed files with 8 additions and 23 deletions
|
|
@ -16,8 +16,8 @@ local function batch(setter: () -> ())
|
|||
local ok, err: string? = pcall(setter)
|
||||
|
||||
if not already_batching then
|
||||
flush()
|
||||
flags.batch = false
|
||||
flush()
|
||||
end
|
||||
|
||||
if not ok then throw(`error occured while batching updates: {err}`) end
|
||||
|
|
|
|||
|
|
@ -184,13 +184,10 @@ local function queue_children_for_update<T>(node: SourceNode<T>)
|
|||
update_queue.n = i
|
||||
end
|
||||
|
||||
local _flushing = false
|
||||
local function flush_update_queue()
|
||||
local n0 = update_queue.n
|
||||
|
||||
return function()
|
||||
assert(not _flushing, "recursive queue flush occured") -- todo
|
||||
_flushing = true
|
||||
|
||||
local i = n0 + 1
|
||||
while i <= update_queue.n do
|
||||
|
|
@ -207,7 +204,6 @@ local function flush_update_queue()
|
|||
|
||||
update_queue.n = n0
|
||||
|
||||
_flushing = false
|
||||
end
|
||||
end
|
||||
|
||||
|
|
|
|||
|
|
@ -1924,28 +1924,17 @@ TEST("batch()", wrap_root(function()
|
|||
do CASE "recursive queue flush"
|
||||
|
||||
local a0 = source(0)
|
||||
local a1 = source(1)
|
||||
local a2 = source(0)
|
||||
local a1 = source(0)
|
||||
local updates = 0
|
||||
|
||||
derive(function()
|
||||
a0(a1() + 1)
|
||||
derive(function() -- depends on a1
|
||||
a0(a1())
|
||||
end)
|
||||
|
||||
derive(function()
|
||||
derive(function() -- batch updates a2
|
||||
updates += 1
|
||||
a0()
|
||||
|
||||
batch(function()
|
||||
a2(a0())
|
||||
end)
|
||||
|
||||
return 1
|
||||
end)
|
||||
|
||||
derive(function()
|
||||
a2()
|
||||
|
||||
batch(function()
|
||||
|
||||
end)
|
||||
|
|
@ -1953,7 +1942,7 @@ TEST("batch()", wrap_root(function()
|
|||
return 1
|
||||
end)
|
||||
|
||||
a1(2)
|
||||
a1(1)
|
||||
CHECK(updates == 2)
|
||||
end
|
||||
end))
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue