Fix secret kind field visibility
This commit is contained in:
@@ -3,6 +3,10 @@
|
|||||||
Used by: api-keys, logs, usage, settings
|
Used by: api-keys, logs, usage, settings
|
||||||
══════════════════════════════════════════════════ */
|
══════════════════════════════════════════════════ */
|
||||||
|
|
||||||
|
[hidden] {
|
||||||
|
display: none !important;
|
||||||
|
}
|
||||||
|
|
||||||
/* ── Dropdown divider (used in navbar and elsewhere) ── */
|
/* ── Dropdown divider (used in navbar and elsewhere) ── */
|
||||||
.dropdown-divider {
|
.dropdown-divider {
|
||||||
height: 1px;
|
height: 1px;
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
const { test, expect } = require('@playwright/test');
|
const { test, expect } = require('@playwright/test');
|
||||||
const { browserJson, getCurrentWorkspace, login, uniqueName } = require('./helpers');
|
const { browserJson, getCurrentWorkspace, localized, login, uniqueName } = require('./helpers');
|
||||||
|
|
||||||
test('created workspace secret renders styled table actions', async ({ page }) => {
|
test('created workspace secret renders styled table actions', async ({ page }) => {
|
||||||
const secretName = uniqueName('ui_secret');
|
const secretName = uniqueName('ui_secret');
|
||||||
@@ -26,3 +26,42 @@ test('created workspace secret renders styled table actions', async ({ page }) =
|
|||||||
await expect(row.locator('[data-testid="secret-delete-action"]')).toHaveClass(/btn-danger/);
|
await expect(row.locator('[data-testid="secret-delete-action"]')).toHaveClass(/btn-danger/);
|
||||||
await expect(row.locator('[data-testid="secret-delete-action"]')).toHaveClass(/table-action-btn/);
|
await expect(row.locator('[data-testid="secret-delete-action"]')).toHaveClass(/table-action-btn/);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
test('secret modal shows fields for selected secret kind only', async ({ page }) => {
|
||||||
|
await login(page);
|
||||||
|
await page.goto('/secrets');
|
||||||
|
|
||||||
|
await page.locator('[data-testid="secret-create-button"]').click();
|
||||||
|
await expect(page.locator('[data-testid="secret-create-modal"]')).toBeVisible();
|
||||||
|
|
||||||
|
const stringField = page.locator('[data-kind-field="string"]');
|
||||||
|
const basicField = page.locator('[data-kind-field="basic"]');
|
||||||
|
const jsonField = page.locator('[data-kind-field="json"]');
|
||||||
|
const kindSelect = page.locator('[data-testid="secret-kind-select"]');
|
||||||
|
|
||||||
|
await expect(stringField).toBeVisible();
|
||||||
|
await expect(basicField).toBeHidden();
|
||||||
|
await expect(jsonField).toBeHidden();
|
||||||
|
|
||||||
|
await kindSelect.selectOption('username_password');
|
||||||
|
await expect(stringField).toBeHidden();
|
||||||
|
await expect(basicField).toBeVisible();
|
||||||
|
await expect(jsonField).toBeHidden();
|
||||||
|
|
||||||
|
await kindSelect.selectOption('header');
|
||||||
|
await expect(stringField).toBeVisible();
|
||||||
|
await expect(page.locator('#secret-string-label')).toHaveText(localized('Header value', 'Значение заголовка'));
|
||||||
|
await expect(basicField).toBeHidden();
|
||||||
|
await expect(jsonField).toBeHidden();
|
||||||
|
|
||||||
|
await kindSelect.selectOption('generic');
|
||||||
|
await expect(stringField).toBeHidden();
|
||||||
|
await expect(basicField).toBeHidden();
|
||||||
|
await expect(jsonField).toBeVisible();
|
||||||
|
|
||||||
|
await kindSelect.selectOption('token');
|
||||||
|
await expect(stringField).toBeVisible();
|
||||||
|
await expect(page.locator('#secret-string-label')).toHaveText(localized('Token value', 'Значение токена'));
|
||||||
|
await expect(basicField).toBeHidden();
|
||||||
|
await expect(jsonField).toBeHidden();
|
||||||
|
});
|
||||||
|
|||||||
Reference in New Issue
Block a user