local session = require("session")
local id = "_e2e_session_" .. tostring(os.time())
local first = session.load(id)
print("first_type=" .. type(first))
print("first_count=" .. tostring(#first))
local synthetic = {
{ role = "user", content = "hello" },
{ role = "assistant", content = "hi there" },
{ role = "user", content = "how are you?" },
}
session.save(id, synthetic)
local loaded = session.load(id)
print("loaded_count=" .. tostring(#loaded))
print("loaded_role1=" .. tostring(loaded[1].role))
print("loaded_content2=" .. tostring(loaded[2].content))
print("loaded_role3=" .. tostring(loaded[3].role))
print("clear_existing=" .. tostring(session.clear(id)))
print("clear_missing=" .. tostring(session.clear(id)))
local after = session.load(id)
print("after_clear_count=" .. tostring(#after))
local ok_empty = pcall(session.load, "")
print("reject_empty=" .. tostring(not ok_empty))
local ok_nil = pcall(session.load, nil)
print("reject_nil=" .. tostring(not ok_nil))