Add native gameplay outcomes, recovery verification, and realm diagnostics
Core tests / core (push) Successful in 40s
Core tests / core (push) Successful in 40s
This commit is contained in:
@@ -3,7 +3,7 @@ from lupa import LuaRuntime
|
||||
code=(Path(__file__).resolve().parents[1]/'ale/azerothai_recovery.lua').read_text()
|
||||
setup='''
|
||||
now=1000;os.time=function()return now end;attempts=0;expired=0;last=nil;active=true;player={x=0};ai={};captured={}
|
||||
function AuthDBExecute(sql) if string.find(sql,'INSERT INTO',1,true) then last=now end end
|
||||
function AuthDBExecute(sql) table.insert(captured,sql);if string.find(sql,'INSERT INTO azerothai_recovery_log',1,true) then last=now end end
|
||||
function AuthDBQuery(sql) if string.find(sql,'recovery_log',1,true) then return last and now-last<1800 and {} or nil end;return active and {} or nil end
|
||||
function GetPlayerByName(n) return n=='Test' and player or nil end
|
||||
function CreateLuaEvent(fn) tick=fn end
|
||||
@@ -55,3 +55,8 @@ print('Intent, movement, health progress, active identity and stale input guards
|
||||
l=new();l.execute('player.group={GetMembers=function()return {{IsPlayerbot=function()return false end}} end,GetMembersCount=function()return 1 end};step(0);step(601);assert(attempts==0)')
|
||||
l=new();l.execute('player.motion=7;step(0);step(601);assert(attempts==1 and expired==1)')
|
||||
print('Human group exclusion and stale flight recovery passed')
|
||||
|
||||
l=new();l.execute("step(0);step(600);player.x=8;step(30);assert(string.find(captured[#captured], '726573756D6564'))")
|
||||
l=new();l.execute("step(0);step(600);step(180);assert(string.find(captured[#captured], '6E6F5F70726F6772657373'))")
|
||||
l=new();l.execute("step(0);step(600);player.dead=true;step(30);assert(string.find(captured[#captured], '756E7665726966696564'))")
|
||||
print('Recovery outcomes distinguish native progress, no progress, and unavailable residents')
|
||||
|
||||
Reference in New Issue
Block a user