Fix workbench dark theme and enlarge dialogs
This commit is contained in:
@@ -1017,7 +1017,7 @@ operations:
|
||||
) as response:
|
||||
extension_script = response.read().decode("utf-8")
|
||||
with self.opener.open(
|
||||
f"{self.base_url}/self-extension.css?v=pet-settings-52", timeout=3
|
||||
f"{self.base_url}/self-extension.css?v=pet-settings-54-dialog-size", timeout=3
|
||||
) as response:
|
||||
extension_styles = response.read().decode("utf-8").replace("\r\n", "\n")
|
||||
with self.opener.open(
|
||||
@@ -1029,7 +1029,7 @@ operations:
|
||||
) as response:
|
||||
energy_script = response.read().decode("utf-8")
|
||||
with self.opener.open(
|
||||
f"{self.base_url}/energy-monitor.css?v=energy-monitor-4", timeout=3
|
||||
f"{self.base_url}/energy-monitor.css?v=energy-monitor-5-dialog-size", timeout=3
|
||||
) as response:
|
||||
energy_styles = response.read().decode("utf-8")
|
||||
with self.opener.open(
|
||||
@@ -1385,18 +1385,19 @@ operations:
|
||||
self.assertIn('canvas.addEventListener("webglcontextlost"', app_script)
|
||||
self.assertIn('"cognitive-agent:module-change"', app_script)
|
||||
self.assertIn(
|
||||
'const CACHE_VERSION = "cognitive-agent-pad-v322-n7-firmware-merge"',
|
||||
'const CACHE_VERSION = "cognitive-agent-pad-v323-dialog-theme"',
|
||||
service_worker,
|
||||
)
|
||||
self.assertIn('/console-v2.css?v=delivery-state-69', service_worker)
|
||||
self.assertIn('/console-v2.js?v=local-first-77-performance', service_worker)
|
||||
self.assertIn('/assistant-chat.css?v=codex-assistant-29', service_worker)
|
||||
self.assertIn('/assistant-chat.js?v=codex-assistant-34', service_worker)
|
||||
self.assertIn('/energy-monitor.css?v=energy-monitor-4', service_worker)
|
||||
self.assertIn('/energy-monitor.css?v=energy-monitor-5-dialog-size', service_worker)
|
||||
self.assertIn('/energy-monitor.js?v=energy-monitor-5-performance', service_worker)
|
||||
self.assertIn('"/app.js?v=dual-seat-145-n7-dispatch"', service_worker)
|
||||
self.assertIn('/firmware-workbench-entry.css?v=1', service_worker)
|
||||
self.assertIn('/firmware-workbench-entry.js?v=2', service_worker)
|
||||
self.assertIn('/firmware-workbench-entry.css?v=2', service_worker)
|
||||
self.assertIn('/firmware-workbench-entry.js?v=3', service_worker)
|
||||
self.assertIn('/firmware-workbench-theme.js?v=1', service_worker)
|
||||
self.assertIn('/firmware-workbench.html', service_worker)
|
||||
self.assertIn('"/speech-input.js?v=sensevoice-13"', service_worker)
|
||||
self.assertIn('"/speech-input.css?v=sensevoice-7"', service_worker)
|
||||
|
||||
@@ -27,7 +27,7 @@ def test_console_contains_ai_assistant_surface():
|
||||
def test_codex_assistant_assets_are_versioned_together_in_the_service_worker():
|
||||
service_worker = (ROOT / "apps/web-console/service-worker.js").read_text(encoding="utf-8")
|
||||
assert (
|
||||
'const CACHE_VERSION = "cognitive-agent-pad-v322-n7-firmware-merge"'
|
||||
'const CACHE_VERSION = "cognitive-agent-pad-v323-dialog-theme"'
|
||||
in service_worker
|
||||
)
|
||||
assert '"/assistant-chat.css?v=codex-assistant-29"' in service_worker
|
||||
|
||||
@@ -31,7 +31,7 @@ def test_energy_monitor_assets_are_versioned_and_cached() -> None:
|
||||
service_worker = source("service-worker.js")
|
||||
|
||||
for asset in (
|
||||
"/energy-monitor.css?v=energy-monitor-4",
|
||||
"/energy-monitor.css?v=energy-monitor-5-dialog-size",
|
||||
"/energy-monitor.js?v=energy-monitor-5-performance",
|
||||
):
|
||||
assert f'"{asset}"' in service_worker
|
||||
@@ -41,7 +41,7 @@ def test_energy_monitor_assets_are_versioned_and_cached() -> None:
|
||||
"/energy-monitor.js?v=energy-monitor-5-performance"
|
||||
)
|
||||
assert (
|
||||
'const CACHE_VERSION = "cognitive-agent-pad-v322-n7-firmware-merge"'
|
||||
'const CACHE_VERSION = "cognitive-agent-pad-v323-dialog-theme"'
|
||||
in service_worker
|
||||
)
|
||||
|
||||
|
||||
@@ -51,21 +51,59 @@ def test_workbench_exposes_artifact_actions_and_always_starts_a_new_task() -> No
|
||||
assert "已发布,待车机端下载升级" not in script
|
||||
assert 'id = "firmwareWorkbenchToggle"' in entry
|
||||
assert 'className = "firmware-workbench-layer"' in entry
|
||||
assert "/firmware-workbench-entry.js?v=2" in index
|
||||
assert "/firmware-workbench-entry.css?v=1" in index
|
||||
assert "/firmware-workbench-entry.js?v=3" in index
|
||||
assert "/firmware-workbench-entry.css?v=2" in index
|
||||
for asset in (
|
||||
"/firmware-workbench-entry.css?v=1",
|
||||
"/firmware-workbench-entry.js?v=2",
|
||||
"/firmware-workbench-entry.css?v=2",
|
||||
"/firmware-workbench-entry.js?v=3",
|
||||
"/firmware-workbench.html",
|
||||
"/firmware-workbench.css?v=5",
|
||||
"/firmware-workbench-theme.js?v=1",
|
||||
"/firmware-workbench.css?v=6",
|
||||
"/firmware-workbench.js?v=3",
|
||||
):
|
||||
assert f'"{asset}"' in worker
|
||||
for runtime_file in (
|
||||
"firmware-workbench-entry.js",
|
||||
"firmware-workbench-entry.css",
|
||||
"firmware-workbench-theme.js",
|
||||
"firmware-workbench.html",
|
||||
"firmware-workbench.js",
|
||||
"firmware-workbench.css",
|
||||
):
|
||||
assert f'"{runtime_file}"' in vite
|
||||
|
||||
|
||||
def test_workbench_inherits_live_theme_and_uses_the_larger_dialog_frame() -> None:
|
||||
html = source("firmware-workbench.html")
|
||||
entry = source("firmware-workbench-entry.js")
|
||||
entry_styles = source("firmware-workbench-entry.css")
|
||||
workbench_styles = source("firmware-workbench.css")
|
||||
theme = source("firmware-workbench-theme.js")
|
||||
|
||||
assert 'content="light dark"' in html
|
||||
assert 'id="firmwareWorkbenchThemeColor"' in html
|
||||
assert '/firmware-workbench-theme.js?v=1' in html
|
||||
assert 'data-glass-theme="dark"' in workbench_styles
|
||||
assert 'window.parent?.document?.documentElement?.dataset?.glassTheme' in theme
|
||||
assert 'event.data?.type !== "cognitive-agent:theme-change"' in theme
|
||||
assert 'window.addEventListener("cognitive-agent:theme-change"' in entry
|
||||
assert 'attributeFilter: ["data-glass-theme"]' in entry
|
||||
assert 'width: min(1480px, 100%);' in entry_styles
|
||||
assert 'height: min(900px, 100%);' in entry_styles
|
||||
assert 'width: min(1040px, 100%);' in workbench_styles
|
||||
assert 'max-height: min(820px, calc(100dvh - 48px));' in workbench_styles
|
||||
|
||||
|
||||
def test_peer_dialogs_share_the_expanded_desktop_size_contract() -> None:
|
||||
gallery = source("styles.css")
|
||||
energy = source("energy-monitor.css")
|
||||
extension = source("self-extension.css")
|
||||
|
||||
assert 'width: min(1320px, calc(100vw - 32px));' in gallery
|
||||
assert 'height: min(860px, calc(100dvh - 32px));' in gallery
|
||||
assert 'width: min(1480px, 100%);' in energy
|
||||
assert 'height: min(900px, 100%);' in energy
|
||||
assert 'width: min(780px, calc(100vw - 32px));' in extension
|
||||
assert 'width: min(960px, calc(100vw - 30px));' in extension
|
||||
assert 'width: min(1180px, calc(100vw - 28px));' in extension
|
||||
assert 'width: min(980px, calc(100vw - 32px));' in extension
|
||||
|
||||
@@ -99,5 +99,5 @@ def test_performance_assets_have_a_new_cache_generation() -> None:
|
||||
):
|
||||
assert asset in html
|
||||
assert f'"{asset}"' in worker
|
||||
assert 'const CACHE_VERSION = "cognitive-agent-pad-v322-n7-firmware-merge"' in worker
|
||||
assert 'const CACHE_VERSION = "cognitive-agent-pad-v323-dialog-theme"' in worker
|
||||
assert '"/codepen-glass-theme.css?v=creative-cloud-6-performance"' in worker
|
||||
|
||||
@@ -45,16 +45,16 @@ def test_theme_asset_versions_are_consistent_with_the_pwa_shell() -> None:
|
||||
service_worker = source("service-worker.js")
|
||||
|
||||
for source_asset, cached_asset in (
|
||||
('import "../styles.css"', "/styles.css?v=dual-seat-23"),
|
||||
('import "../styles.css"', "/styles.css?v=dual-seat-24-dialog-size"),
|
||||
('import "../console-v2.css"', "/console-v2.css?v=delivery-state-69"),
|
||||
('import "../self-extension.css"', "/self-extension.css?v=pet-settings-52"),
|
||||
('import "../self-extension.css"', "/self-extension.css?v=pet-settings-54-dialog-size"),
|
||||
('import "../speech-input.css"', "/speech-input.css?v=sensevoice-7"),
|
||||
('import "../codepen-glass-theme.css"', "/codepen-glass-theme.css?v=creative-cloud-6-performance"),
|
||||
):
|
||||
assert source_asset in main
|
||||
assert f'"{cached_asset}"' in service_worker
|
||||
assert 'import "./styles/design-system.css"' in main
|
||||
assert 'const CACHE_VERSION = "cognitive-agent-pad-v322-n7-firmware-merge"' in service_worker
|
||||
assert 'const CACHE_VERSION = "cognitive-agent-pad-v323-dialog-theme"' in service_worker
|
||||
|
||||
|
||||
def test_reference_glass_theme_covers_the_complete_workspace() -> None:
|
||||
|
||||
@@ -31,7 +31,7 @@ def test_vue_vite_application_is_the_primary_frontend_entry() -> None:
|
||||
assert package["scripts"]["build"] == "vite build"
|
||||
assert 'import vue from "@vitejs/plugin-vue"' in vite
|
||||
assert 'outDir: outputRoot' in vite
|
||||
assert 'const CACHE_VERSION = "cognitive-agent-pad-v322-n7-firmware-merge"' in service_worker
|
||||
assert 'const CACHE_VERSION = "cognitive-agent-pad-v323-dialog-theme"' in service_worker
|
||||
assert "unpkg.com" not in html
|
||||
assert "cdn.jsdelivr.net" not in html
|
||||
|
||||
|
||||
Reference in New Issue
Block a user