Skip to content

Commit 2f2a395

Browse files
authored
e2e tests for deployment/licenses (#12926)
1 parent b6359b0 commit 2f2a395

File tree

4 files changed

+41
-15
lines changed

4 files changed

+41
-15
lines changed
+30
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
import { expect, test } from "@playwright/test";
2+
import { requiresEnterpriseLicense } from "../../helpers";
3+
4+
test("license was added successfully", async ({ page }) => {
5+
requiresEnterpriseLicense();
6+
7+
await page.goto("/deployment/licenses", { waitUntil: "domcontentloaded" });
8+
const firstLicense = page.locator(".licenses > .license-card", {
9+
hasText: "#1",
10+
});
11+
await expect(firstLicense).toBeVisible();
12+
13+
// Trial vs. Enterprise?
14+
const accountType = firstLicense.locator(".account-type");
15+
await expect(accountType).toHaveText("Enterprise");
16+
17+
// User limit 1/1
18+
const userLimit = firstLicense.locator(".user-limit");
19+
await expect(userLimit).toHaveText("1 / 1");
20+
21+
// License should not be expired yet
22+
const licenseExpires = firstLicense.locator(".license-expires");
23+
const licenseExpiresDate = new Date(await licenseExpires.innerText());
24+
const now = new Date();
25+
expect(licenseExpiresDate.getTime()).toBeGreaterThan(now.getTime());
26+
27+
// "Remove" button should be visible
28+
const removeButton = firstLicense.locator(".remove-button");
29+
await expect(removeButton).toBeVisible();
30+
});

site/e2e/tests/enterprise.spec.ts

-10
This file was deleted.

site/src/pages/DeploySettingsPage/LicensesSettingsPage/LicenseCard.tsx

+10-4
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,12 @@ export const LicenseCard: FC<LicenseCardProps> = ({
3232
license.claims.features["user_limit"] || userLimitLimit;
3333

3434
return (
35-
<Paper key={license.id} elevation={2} css={styles.licenseCard}>
35+
<Paper
36+
key={license.id}
37+
elevation={2}
38+
css={styles.licenseCard}
39+
className="license-card"
40+
>
3641
<ConfirmDialog
3742
type="delete"
3843
hideCancel={false}
@@ -58,7 +63,7 @@ export const LicenseCard: FC<LicenseCardProps> = ({
5863
alignItems="center"
5964
>
6065
<span css={styles.licenseId}>#{license.id}</span>
61-
<span css={styles.accountType}>
66+
<span css={styles.accountType} className="account-type">
6267
{license.claims.trial ? "Trial" : "Enterprise"}
6368
</span>
6469
<Stack
@@ -72,7 +77,7 @@ export const LicenseCard: FC<LicenseCardProps> = ({
7277
>
7378
<Stack direction="column" spacing={0} alignItems="center">
7479
<span css={styles.secondaryMaincolor}>Users</span>
75-
<span css={styles.userLimit}>
80+
<span css={styles.userLimit} className="user-limit">
7681
{userLimitActual} {` / ${currentUserLimit || "Unlimited"}`}
7782
</span>
7883
</Stack>
@@ -92,7 +97,7 @@ export const LicenseCard: FC<LicenseCardProps> = ({
9297
) : (
9398
<span css={styles.secondaryMaincolor}>Valid Until</span>
9499
)}
95-
<span css={styles.licenseExpires}>
100+
<span css={styles.licenseExpires} className="license-expires">
96101
{dayjs
97102
.unix(license.claims.license_expires)
98103
.format("MMMM D, YYYY")}
@@ -104,6 +109,7 @@ export const LicenseCard: FC<LicenseCardProps> = ({
104109
variant="contained"
105110
size="small"
106111
onClick={() => setLicenseIDMarkedForRemoval(license.id)}
112+
className="remove-button"
107113
>
108114
Remove&hellip;
109115
</Button>

site/src/pages/DeploySettingsPage/LicensesSettingsPage/LicensesSettingsPageView.tsx

+1-1
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ const LicensesSettingsPageView: FC<Props> = ({
8484
{isLoading && <Skeleton variant="rectangular" height={200} />}
8585

8686
{!isLoading && licenses && licenses?.length > 0 && (
87-
<Stack spacing={4}>
87+
<Stack spacing={4} className="licenses">
8888
{licenses
8989
?.sort(
9090
(a, b) =>

0 commit comments

Comments
 (0)