mirror of
https://github.com/lensapp/lens.git
synced 2025-05-20 05:10:56 +00:00
Co-authored-by: Sebastian Malton <sebastian@malton.name> Co-authored-by: Jim Ehrismann <jehrismann@mirantis.com>
70 lines
2.2 KiB
TypeScript
70 lines
2.2 KiB
TypeScript
/**
|
|
* Copyright (c) OpenLens Authors. All rights reserved.
|
|
* Licensed under MIT License. See LICENSE in root directory for more information.
|
|
*/
|
|
|
|
/*
|
|
Cluster tests are run if there is a pre-existing minikube cluster. Before running cluster tests the TEST_NAMESPACE
|
|
namespace is removed, if it exists, from the minikube cluster. Resources are created as part of the cluster tests in the
|
|
TEST_NAMESPACE namespace. This is done to minimize destructive impact of the cluster tests on an existing minikube
|
|
cluster and vice versa.
|
|
*/
|
|
import type { ElectronApplication, Page } from "playwright";
|
|
import * as utils from "../helpers/utils";
|
|
import { isWindows } from "../../src/common/vars";
|
|
|
|
describe("preferences page tests", () => {
|
|
let window: Page, cleanup: () => Promise<void>;
|
|
|
|
beforeEach(async () => {
|
|
let app: ElectronApplication;
|
|
|
|
({ window, cleanup, app } = await utils.start());
|
|
await utils.clickWelcomeButton(window);
|
|
|
|
await app.evaluate(async ({ app }) => {
|
|
await app.applicationMenu
|
|
.getMenuItemById(process.platform === "darwin" ? "root" : "file")
|
|
.submenu.getMenuItemById("preferences")
|
|
.click();
|
|
});
|
|
}, 10*60*1000);
|
|
|
|
afterEach(async () => {
|
|
await cleanup();
|
|
}, 10*60*1000);
|
|
|
|
// skip on windows due to suspected playwright issue with Electron 14
|
|
utils.itIf(!isWindows)('shows "preferences" and can navigate through the tabs', async () => {
|
|
const pages = [
|
|
{
|
|
id: "application",
|
|
header: "Application",
|
|
},
|
|
{
|
|
id: "proxy",
|
|
header: "Proxy",
|
|
},
|
|
{
|
|
id: "kubernetes",
|
|
header: "Kubernetes",
|
|
},
|
|
];
|
|
|
|
for (const { id, header } of pages) {
|
|
await window.click(`[data-testid=${id}-tab]`);
|
|
await window.waitForSelector(`[data-testid=${id}-header] >> text=${header}`);
|
|
}
|
|
}, 10*60*1000);
|
|
|
|
// Skipping, but will turn it on again in the follow up PR
|
|
it.skip("ensures helm repos", async () => {
|
|
await window.click("[data-testid=kubernetes-tab]");
|
|
await window.waitForSelector("[data-testid=repository-name]", {
|
|
timeout: 140_000,
|
|
});
|
|
await window.click("#HelmRepoSelect");
|
|
await window.waitForSelector("div.Select__option");
|
|
}, 10*60*1000);
|
|
});
|