34 lines
1.3 KiB
JavaScript
34 lines
1.3 KiB
JavaScript
import { test, expect } from '@playwright/test';
|
|
import { waitForAppReady, setupConsoleCollector, resetMockState } from './helpers.js';
|
|
|
|
test.describe('Status Bar host', () => {
|
|
let consoleCollector;
|
|
|
|
test.beforeEach(async ({ page }) => {
|
|
consoleCollector = setupConsoleCollector(page);
|
|
await resetMockState(page);
|
|
await page.goto('/');
|
|
await waitForAppReady(page);
|
|
});
|
|
|
|
test.afterEach(async () => {
|
|
consoleCollector.assertNoErrors();
|
|
});
|
|
|
|
test('renders enabled plugin statusBarItems', async ({ page }) => {
|
|
const statusBar = page.locator('.status-bar');
|
|
await expect(statusBar).toBeVisible();
|
|
await expect(statusBar.locator('[data-status-item-id="verstak.platform-test.status"]')).toContainText('All Tests Pass');
|
|
});
|
|
|
|
test('refreshes statusBarItems after disabling plugin', async ({ page }) => {
|
|
const pluginCard = page.locator('.plugin-card').filter({ hasText: 'verstak.platform-test' });
|
|
await expect(page.locator('[data-status-item-id="verstak.platform-test.status"]')).toBeVisible();
|
|
|
|
await pluginCard.locator('button.btn-disable').click();
|
|
|
|
await expect(pluginCard.locator('button.btn-enable')).toBeVisible({ timeout: 10000 });
|
|
await expect(page.locator('[data-status-item-id="verstak.platform-test.status"]')).not.toBeVisible();
|
|
});
|
|
});
|