From 75223dfd8b644f496f38a735339eca7064f7c66d Mon Sep 17 00:00:00 2001 From: Marcin Tojek Date: Thu, 18 Apr 2024 12:50:34 +0200 Subject: [PATCH] test(site): add e2e tests for observability --- site/e2e/api.ts | 7 ++++ site/e2e/tests/deployment/network.spec.ts | 2 +- .../tests/deployment/observability.spec.ts | 39 +++++++++++++++++++ 3 files changed, 47 insertions(+), 1 deletion(-) create mode 100644 site/e2e/tests/deployment/observability.spec.ts diff --git a/site/e2e/api.ts b/site/e2e/api.ts index 90fe72b1c1..65a4aaa40a 100644 --- a/site/e2e/api.ts +++ b/site/e2e/api.ts @@ -91,6 +91,13 @@ export async function verifyConfigFlagString( await expect(configOption).toHaveText(opt.value); } +export async function verifyConfigFlagEmpty(page: Page, flag: string) { + const configOption = page.locator( + `div.options-table .option-${flag} .option-value-empty`, + ); + await expect(configOption).toHaveText("Not set"); +} + export async function verifyConfigFlagArray( page: Page, config: API.DeploymentConfig, diff --git a/site/e2e/tests/deployment/network.spec.ts b/site/e2e/tests/deployment/network.spec.ts index ec4d869622..c979bb8e10 100644 --- a/site/e2e/tests/deployment/network.spec.ts +++ b/site/e2e/tests/deployment/network.spec.ts @@ -9,7 +9,7 @@ import { verifyConfigFlagString, } from "../../api"; -test("login with OIDC", async ({ page }) => { +test("enabled network settings", async ({ page }) => { await setupApiCalls(page); const config = await getDeploymentConfig(); diff --git a/site/e2e/tests/deployment/observability.spec.ts b/site/e2e/tests/deployment/observability.spec.ts new file mode 100644 index 0000000000..e94f14b6ce --- /dev/null +++ b/site/e2e/tests/deployment/observability.spec.ts @@ -0,0 +1,39 @@ +import { test } from "@playwright/test"; +import { getDeploymentConfig } from "api/api"; +import { + setupApiCalls, + verifyConfigFlagArray, + verifyConfigFlagBoolean, + verifyConfigFlagDuration, + verifyConfigFlagEmpty, + verifyConfigFlagString, +} from "../../api"; + +test("enabled observability settings", async ({ page }) => { + await setupApiCalls(page); + const config = await getDeploymentConfig(); + + await page.goto("/deployment/observability", { + waitUntil: "domcontentloaded", + }); + + await verifyConfigFlagBoolean(page, config, "trace-logs"); + await verifyConfigFlagBoolean(page, config, "enable-terraform-debug-mode"); + await verifyConfigFlagBoolean(page, config, "enable-terraform-debug-mode"); + await verifyConfigFlagDuration(page, config, "health-check-refresh"); + await verifyConfigFlagEmpty(page, "health-check-threshold-database"); + await verifyConfigFlagString(page, config, "log-human"); + await verifyConfigFlagString(page, config, "prometheus-address"); + await verifyConfigFlagArray( + page, + config, + "prometheus-aggregate-agent-stats-by", + ); + await verifyConfigFlagBoolean(page, config, "prometheus-collect-agent-stats"); + await verifyConfigFlagBoolean(page, config, "prometheus-collect-db-metrics"); + await verifyConfigFlagBoolean(page, config, "prometheus-enable"); + await verifyConfigFlagBoolean(page, config, "trace-datadog"); + await verifyConfigFlagBoolean(page, config, "trace"); + await verifyConfigFlagBoolean(page, config, "verbose"); + await verifyConfigFlagBoolean(page, config, "pprof-enable"); +});