Partially implemented the Manage Time functionality

This commit is contained in:
2026-10-16 19:50:39 -03:00
parent 2ae057cc90
commit d392e5ddd7
28 changed files with 2528 additions and 64 deletions

View File

@@ -6,12 +6,20 @@ test("preparation runs once, shares pending work and reports loading and complet
const app = loadApplication("content");
const progress = [];
let requests = 0;
let resourceRequests = 0;
let resolveUser, resolveSession;
app.currentUser.ensure = () => new Promise(resolve => { resolveUser = resolve; });
app.currentUser.allowsCrmActivities = () => true;
app.currentUser.getUserId = () => "test@example.invalid";
app.activityProgress.update = (...args) => progress.push(args);
app.debugContentLog.appendBackgroundRequestLog = () => {};
app.platformContentMessages.sendRuntimeMessage = message => {
if (message.type === "opportunitiesExtension.requestResourceUser") {
resourceRequests += 1;
assert.equal(message.emailAddress, "test@example.invalid");
assert.deepEqual(progress.at(-1), ["session", "complete"]);
return Promise.resolve({ ok: true, resource: { resourcePartyId: 123 } });
}
assert.equal(message.type, "opportunitiesExtension.prepareSrSession");
requests += 1;
return new Promise(resolve => { resolveSession = resolve; });
@@ -26,6 +34,7 @@ test("preparation runs once, shares pending work and reports loading and complet
await first;
await app.srSessionPreparation.ensure();
assert.equal(requests, 1);
assert.equal(resourceRequests, 1);
assert.deepEqual(progress.at(-1), ["session", "complete"]);
});