Skip to content

Commit 89b2b45

Browse files
committed
test(persist): stabilize silent notification spec
1 parent baa4972 commit 89b2b45

1 file changed

Lines changed: 22 additions & 7 deletions

File tree

tests/persist_sessions_spec.lua

Lines changed: 22 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -486,15 +486,30 @@ describe("peekstack.persist.sessions", function()
486486
table.insert(notifications, msg)
487487
end
488488

489-
persist.save_current("silent_session", { silent = true })
490-
persist.restore("missing_session", { silent = true })
489+
local save_done = nil
490+
local restore_done = nil
491491

492-
wait_for_store(test_scope, function(read_data)
493-
local ensured = migrate.ensure(read_data)
494-
return ensured.sessions.silent_session ~= nil
495-
end)
492+
persist.save_current("silent_session", {
493+
silent = true,
494+
on_done = function(success)
495+
save_done = success
496+
end,
497+
})
498+
persist.restore("missing_session", {
499+
silent = true,
500+
on_done = function(restored)
501+
restore_done = restored
502+
end,
503+
})
496504

497-
assert.equals(0, #notifications)
505+
local waited = vim.wait(wait_timeout_ms, function()
506+
return save_done ~= nil and restore_done ~= nil
507+
end, wait_interval_ms)
508+
assert.is_true(waited, "Timed out waiting for silent persist callbacks")
509+
assert.is_true(save_done)
510+
assert.is_false(restore_done)
511+
assert.is_false(vim.list_contains(notifications, "[peekstack] Session saved: silent_session"))
512+
assert.is_false(vim.list_contains(notifications, "[peekstack] No saved session: missing_session"))
498513
vim.notify = original_notify
499514
end)
500515

0 commit comments

Comments
 (0)