diff --git a/test/components/views/elements/AppTile-test.tsx b/test/components/views/elements/AppTile-test.tsx
index 4518adede3..2cd413f2eb 100644
--- a/test/components/views/elements/AppTile-test.tsx
+++ b/test/components/views/elements/AppTile-test.tsx
@@ -182,6 +182,10 @@ describe("AppTile", () => {
expect(renderResult.getByText("Example 1")).toBeInTheDocument();
expect(ActiveWidgetStore.instance.isLive("1", "r1")).toBe(true);
+ const { container, asFragment } = renderResult;
+ expect(container.getElementsByClassName("mx_Spinner").length).toBeTruthy();
+ expect(asFragment()).toMatchSnapshot();
+
// We want to verify that as we change to room 2, we should close the
// right panel and destroy the widget.
@@ -421,6 +425,25 @@ describe("AppTile", () => {
});
});
+ describe("for a persistent app", () => {
+ let renderResult: RenderResult;
+
+ beforeEach(() => {
+ renderResult = render(
+
+
+ ,
+ );
+ });
+
+ it("should render", () => {
+ const { container, asFragment } = renderResult;
+
+ expect(container.querySelector(".mx_Spinner")).toBeFalsy();
+ expect(asFragment()).toMatchSnapshot();
+ });
+ });
+
it("for a pinned widget permission load", () => {
jest.spyOn(ModuleRunner.instance, "invoke").mockImplementation((lifecycleEvent, opts, widgetInfo) => {
if (lifecycleEvent === WidgetLifecycle.PreLoadRequest && (widgetInfo as WidgetInfo).id === app1.id) {
diff --git a/test/components/views/elements/__snapshots__/AppTile-test.tsx.snap b/test/components/views/elements/__snapshots__/AppTile-test.tsx.snap
index d0dbe25a79..e5a7251d4e 100644
--- a/test/components/views/elements/__snapshots__/AppTile-test.tsx.snap
+++ b/test/components/views/elements/__snapshots__/AppTile-test.tsx.snap
@@ -1,5 +1,93 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP
+exports[`AppTile destroys non-persisted right panel widget on room change 1`] = `
+
+
+
+`;
+
+exports[`AppTile for a persistent app should render 1`] = `
+
+
+
+`;
+
exports[`AppTile for a pinned widget should render 1`] = `