diff --git a/src/__tests__/unit/InstalledAppsModal.test.ts b/src/__tests__/unit/InstalledAppsModal.test.ts new file mode 100644 index 00000000..2659798b --- /dev/null +++ b/src/__tests__/unit/InstalledAppsModal.test.ts @@ -0,0 +1,25 @@ +import { render, screen } from "@testing-library/vue"; +import { describe, expect, it } from "vitest"; + +import InstalledAppsModal from "@/components/InstalledAppsModal.vue"; + +describe("InstalledAppsModal", () => { + it("keeps scroll chaining inside the modal list", () => { + const { container } = render(InstalledAppsModal, { + props: { + show: true, + apps: [], + loading: false, + error: "", + activeOrigin: "spark", + storeFilter: "both", + apmAvailable: true, + }, + }); + + expect(screen.getByText("已安装应用")).toBeTruthy(); + const scrollContainer = container.querySelector(".overflow-y-auto"); + + expect(scrollContainer?.className).toContain("overscroll-contain"); + }); +}); diff --git a/src/components/InstalledAppsModal.vue b/src/components/InstalledAppsModal.vue index 8beae29c..3275342e 100644 --- a/src/components/InstalledAppsModal.vue +++ b/src/components/InstalledAppsModal.vue @@ -78,7 +78,7 @@