Skip to content

Commit 898d81f

Browse files
committed
something like this
1 parent 86075a5 commit 898d81f

File tree

5 files changed

+55
-28
lines changed

5 files changed

+55
-28
lines changed

site/e2e/enterprise.setup.ts

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
import { test } from "@playwright/test";
2+
3+
const license = process.env.CODER_E2E_ENTERPRISE_LICENSE!;
4+
5+
test("setup license", async ({ page }) => {
6+
await page.goto("/deployment/licenses", { waitUntil: "domcontentloaded" });
7+
8+
await page.getByText("Add a license").click();
9+
await page.getByRole("textbox").fill(license);
10+
await page.getByText("Upload License").click();
11+
12+
await page.getByText("You have successfully added a license").isVisible();
13+
});

site/e2e/playwright.config.ts

Lines changed: 20 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,13 +20,30 @@ const localURL = (port: number, path: string): string => {
2020
export default defineConfig({
2121
projects: [
2222
{
23-
name: "setup",
24-
testMatch: /global.setup\.ts/,
23+
name: "testsSetup",
24+
testMatch: /tests.setup\.ts/,
2525
},
2626
{
2727
name: "tests",
2828
testMatch: /.*\.spec\.ts/,
29-
dependencies: ["setup"],
29+
dependencies: ["testsSetup"],
30+
use: {
31+
storageState: storageState,
32+
},
33+
timeout: 60_000,
34+
},
35+
{
36+
name: "enterpriseSetup",
37+
testMatch: /enterprise.setup\.ts/,
38+
dependencies: ["tests"],
39+
use: {
40+
storageState: storageState,
41+
},
42+
},
43+
{
44+
name: "enterprise",
45+
testMatch: /.*\.enterpriseSpec\.ts/,
46+
dependencies: ["enterpriseSetup"],
3047
use: {
3148
storageState: storageState,
3249
},
File renamed without changes.
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
import { expect, test } from "@playwright/test";
2+
import { createTemplate } from "../helpers";
3+
4+
test("require latest version", async ({ page }) => {
5+
const templateName = await createTemplate(page);
6+
7+
await page.goto(`/templates/${templateName}/settings`, {
8+
waitUntil: "domcontentloaded",
9+
});
10+
await expect(page).toHaveURL(`/templates/${templateName}/settings`);
11+
let checkbox = await page.waitForSelector("#require_active_version");
12+
await checkbox.click();
13+
await page.getByTestId("form-submit").click();
14+
15+
await page.goto(`/templates/${templateName}/settings`, {
16+
waitUntil: "domcontentloaded",
17+
});
18+
checkbox = await page.waitForSelector("#require_active_version");
19+
await checkbox.scrollIntoViewIfNeeded();
20+
expect(await checkbox.isChecked()).toBe(true);
21+
});

site/e2e/tests/updateTemplate.spec.ts

Lines changed: 1 addition & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { expect, test } from "@playwright/test";
1+
import { test } from "@playwright/test";
22
import { createTemplate, updateTemplateSettings } from "../helpers";
33

44
test("template update with new name redirects on successful submit", async ({
@@ -10,27 +10,3 @@ test("template update with new name redirects on successful submit", async ({
1010
name: "new-name",
1111
});
1212
});
13-
14-
test.only("require latest version", async ({ page }) => {
15-
const templateName = await createTemplate(page);
16-
17-
await page.goto(`/templates/${templateName}/settings`, {
18-
waitUntil: "domcontentloaded",
19-
});
20-
await expect(page).toHaveURL(`/templates/${templateName}/settings`);
21-
22-
await (await page.waitForSelector("#require_active_version")).click();
23-
const ocheckbox = await page.waitForSelector("#require_active_version");
24-
expect(await ocheckbox.isChecked()).toBe(true);
25-
await page.getByTestId("form-submit").click();
26-
27-
await page.goto(`/templates/${templateName}/settings`, {
28-
waitUntil: "domcontentloaded",
29-
});
30-
await expect(page).toHaveURL(`/templates/${templateName}/settings`);
31-
await page.reload();
32-
const checkbox = await page.waitForSelector("#require_active_version");
33-
await checkbox.scrollIntoViewIfNeeded();
34-
await new Promise((resolve) => setTimeout(resolve, 3000));
35-
expect(await checkbox.isChecked()).toBe(true);
36-
});

0 commit comments

Comments
 (0)