1
0
mirror of https://github.com/lensapp/lens.git synced 2025-05-20 05:10:56 +00:00

Remove uninteresting technical tests that are covered by behavioural ones

Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>

Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
This commit is contained in:
Janne Savolainen 2022-10-17 14:51:46 +03:00
parent bdd901b3e0
commit bb65dc93b2
No known key found for this signature in database
GPG Key ID: 8C6CFB2FFFE8F68A

View File

@ -1,148 +0,0 @@
/**
* Copyright (c) OpenLens Authors. All rights reserved.
* Licensed under MIT License. See LICENSE in root directory for more information.
*/
import "@testing-library/jest-dom/extend-expect";
import type { RenderResult } from "@testing-library/react";
import { computed } from "mobx";
import { noop } from "../../../../utils";
import type { ApplicationBuilder } from "../../../test-utils/get-application-builder";
import { getApplicationBuilder } from "../../../test-utils/get-application-builder";
import type { PreferenceNavigationItem } from "../preference-navigation-items.injectable";
import preferenceNavigationItemsInjectable from "../preference-navigation-items.injectable";
describe.only("preferences - navigation block with links", () => {
let builder: ApplicationBuilder;
beforeEach(() => {
builder = getApplicationBuilder();
});
describe("given in preferences, when rendered", () => {
let renderer: RenderResult;
describe("when general navigation items passed", () => {
beforeEach(async () => {
builder.beforeWindowStart((windowDi) => {
windowDi.override(preferenceNavigationItemsInjectable, () =>
computed(() => generalNavItems),
);
builder.preferences.navigate();
});
renderer = await builder.render();
});
const links = ["General", "Proxy"];
it.each(links)("renders link with text content %s", (link) => {
expect(renderer.container).toHaveTextContent(link);
});
it("does not show custom settings block", () => {
expect(
renderer.queryByTestId("extension-settings"),
).not.toBeInTheDocument();
});
});
describe("when general + extension navigation items passed", () => {
beforeEach(async () => {
builder.beforeWindowStart((windowDi) => {
windowDi.override(preferenceNavigationItemsInjectable, () =>
computed(() => [...generalNavItems, ...extensionNavItems]),
);
builder.preferences.navigate();
});
renderer = await builder.render();
});
const generalLinks = ["General", "Proxy"];
it.each(generalLinks)(
"renders general link with text content %s",
(link) => {
expect(renderer.container).toHaveTextContent(link);
},
);
it("shows custom settings block", () => {
expect(
renderer.queryByTestId("extension-settings"),
).toBeInTheDocument();
});
const extensionLinks = ["lensapp-node-menu", "lensapp-pod-menu"];
it.each(extensionLinks)("shows extension navigation item %s", (link) => {
expect(
renderer.getByTestId(
`tab-link-for-extension-preferences-navigation-item-${link}`,
),
).toBeInTheDocument();
});
it("renders extension navigation items inside custom settings block", () => {
const settingsBlock = renderer.getByTestId("extension-settings");
expect(settingsBlock).toHaveTextContent("lensapp-node-menu");
});
});
});
});
const generalNavItems: PreferenceNavigationItem[] = [
{
id: "general",
label: "General",
isActive: computed(() => false),
isVisible: computed(() => true),
navigate: () => noop,
orderNumber: 0,
parent: "general",
},
{
id: "proxy",
label: "Proxy",
isActive: computed(() => false),
isVisible: computed(() => true),
navigate: () => noop,
orderNumber: 1,
parent: "general",
},
];
const extensionNavItems = [
{
id: "extension-preferences-navigation-item-lensapp-node-menu",
label: "lensapp-node-menu",
isActive: computed(() => false),
isVisible: computed(() => true),
navigate: () => noop,
orderNumber: 0,
parent: "extensions",
},
{
id: "extension-preferences-navigation-item-lensapp-pod-menu",
label: "lensapp-pod-menu",
isActive: computed(() => false),
isVisible: computed(() => true),
navigate: () => noop,
orderNumber: 0,
parent: "extensions",
},
{
id: "extension-preferences-navigation-item-metrics-plugin",
label: "metrics-plugin",
isActive: computed(() => false),
isVisible: computed(() => false),
navigate: () => noop,
orderNumber: 0,
parent: "extensions",
},
];