chore: merge feat/simple-entry-diagnostics into feat/clarity-quality-controls

# Conflicts:
#	src/client/pages/HostPage.tsx
#	src/client/styles.css
This commit is contained in:
AAA committed 2026-08-19 13:33:48 +08:00
commit fb19e59c27
12 files changed
+311 -109

No files matched your search

+29
View File
@@ -0,0 +1,29 @@
import { describe, expect, it } from "vitest";
import { qualityLimitationSummary } from "../src/client/components/connection-details.ts";
import { EMPTY_METRICS, type PeerSnapshot } from "../src/client/types.ts";
function snapshot(qualityWarning: string | null): PeerSnapshot {
return {
peerId: "viewer-1",
connectionId: "connection-1",
connectionState: "connected",
iceConnectionState: "connected",
metrics: { ...EMPTY_METRICS, qualityLimitationReason: "bandwidth" },
error: null,
qualityWarning,
};
}
describe("progressive connection details", () => {
it("keeps one debounced quality warning outside the details panel", () => {
expect(
qualityLimitationSummary([
snapshot(null),
snapshot("持续受带宽限制,浏览器正在降低画面质量"),
snapshot("持续受编码性能限制,浏览器正在降低画面质量"),
]),
).toBe("持续受带宽限制,浏览器正在降低画面质量");
expect(qualityLimitationSummary([snapshot(null)])).toBeNull();
});
});