fix: bind Tomorrow conflict recovery to operator account
This commit is contained in:
1 parent
16a6ee1136
commit
059722de6c
2 files changed
+38
-6
No files matched your search
@@ -167,6 +167,37 @@ console.log(JSON.stringify({adopted,requests,pending:planner.pending(),conflict:
|
||||
assert result["state"] == result["adopted"]
|
||||
|
||||
|
||||
def test_tomorrow_conflict_cannot_be_read_or_resolved_after_account_switch():
|
||||
result = run_controller("""
|
||||
const values=new Map();
|
||||
const storage={getItem:key=>values.get(key)||null,setItem:(key,value)=>values.set(key,value),removeItem:key=>values.delete(key)};
|
||||
let login='timmy';
|
||||
const fetchJson=async (_url,options={})=>{
|
||||
if(options.method==='PUT'){const error=new Error('changed elsewhere');error.status=409;throw error;}
|
||||
return {revision:12,ids:['issue:private:timmy:'],capacity_minutes:60,estimates:{},plan_date:'2026-08-20',timezone:'UTC'};
|
||||
};
|
||||
const planner=createTomorrowPlan({storage,getLogin:()=>login,fetchJson,
|
||||
localDate:()=> '2026-08-19',timeZone:()=> 'UTC'});
|
||||
planner.adopt({revision:11,ids:[],capacity_minutes:null,estimates:{}});
|
||||
planner.stage({ids:['issue:private:phone:'],capacity_minutes:90,estimates:{}});
|
||||
try { await planner.flush(); } catch(_error) {}
|
||||
const before=planner.conflict();
|
||||
login='alexander';
|
||||
const after=planner.conflict();
|
||||
const keep=await planner.keepLocal();
|
||||
const use=planner.useRemote();
|
||||
login='timmy';
|
||||
const restored=planner.conflict();
|
||||
console.log(JSON.stringify({before,after,keep,use,restored}));
|
||||
""")
|
||||
|
||||
assert result["before"]["remote"]["ids"] == ["issue:private:timmy:"]
|
||||
assert result["after"] is None
|
||||
assert result["keep"] is False
|
||||
assert result["use"] is False
|
||||
assert result["restored"]["local"]["ids"] == ["issue:private:phone:"]
|
||||
|
||||
|
||||
def test_tomorrow_planner_loads_and_saves_independently_from_today():
|
||||
result = run_controller("""
|
||||
const requests=[];
|
||||
|
||||
Reference in new issue
Block a user