All checks were successful
CI/CD / detect-changes (pull_request) Successful in 4s
CI/CD / test-runners (pull_request) Has been skipped
CI/CD / test-frontend (pull_request) Successful in 7s
CI/CD / test-sqlite (pull_request) Successful in 2m48s
CI/CD / test-go-pg (pull_request) Successful in 2m53s
CI/CD / build-and-deploy (pull_request) Successful in 1m8s
Migrate Chat, Notes, and Schedules from legacy sw.shell.Topbar to the v0.7.0 shell topbar contract (sw.shell.topbar.setTitle/setSlot), eliminating double topbars on all extension surfaces. - Chat v0.3.0: reactive slot for thread title + People button - Notes v0.9.0: slot for New/Import/Graph buttons - Schedules v0.2.0: reactive slot for count + New button - 6 new shell-topbar runner tests (2 per surface) - Headless E2E deferred to v0.7.5 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
32 lines
1.2 KiB
JavaScript
32 lines
1.2 KiB
JavaScript
/**
|
|
* Schedules Runner — schedules/shell-topbar suite
|
|
*
|
|
* Validates the Schedules surface uses the v0.7.0 shell topbar contract
|
|
* and does not render the legacy sw.shell.Topbar component.
|
|
*/
|
|
(function () {
|
|
'use strict';
|
|
|
|
sw.testing.suite('schedules/shell-topbar', async function (s) {
|
|
|
|
s.test('surface JS does not reference legacy Topbar', async function (t) {
|
|
var base = window.__BASE__ || '';
|
|
var resp = await fetch(base + '/surfaces/schedules/js/main.js');
|
|
t.assert.eq(resp.status, 200, 'fetched schedules main.js');
|
|
var src = await resp.text();
|
|
var hasLegacy = src.indexOf('sw.shell.Topbar') !== -1;
|
|
t.assert.ok(!hasLegacy, 'no sw.shell.Topbar reference (uses shell topbar API)');
|
|
});
|
|
|
|
s.test('surface JS uses shell topbar API', async function (t) {
|
|
var base = window.__BASE__ || '';
|
|
var resp = await fetch(base + '/surfaces/schedules/js/main.js');
|
|
var src = await resp.text();
|
|
var usesAPI = src.indexOf('sw.shell.topbar.setTitle') !== -1
|
|
|| src.indexOf('sw.shell.topbar.setSlot') !== -1;
|
|
t.assert.ok(usesAPI, 'uses sw.shell.topbar.setTitle or setSlot');
|
|
});
|
|
|
|
});
|
|
})();
|