Files
rose-ash/tests/playwright/stepper.spec.js
giles 0fce6934cb
Some checks failed
Test, Build, and Deploy / test-build-deploy (push) Failing after 1m5s
Use dom-on for event handlers; add CI config and stepper Playwright test
- web/orchestration.sx, web/signals.sx: dom-listen → dom-on (trampoline
  wrapper that resolves TCO thunks from Lambda event handlers)
- .gitea/: CI workflow and Dockerfile for automated test runs
- tests/playwright/stepper.spec.js: stepper widget smoke test
- Remove stale artdag .pyc file

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-25 00:19:35 +00:00

28 lines
1.0 KiB
JavaScript

const { test, expect } = require('playwright/test');
const BASE_URL = process.env.SX_TEST_URL || 'http://localhost:8013';
test('home page stepper: no raw SX component calls visible', async ({ page }) => {
await page.goto(BASE_URL + '/sx/', { waitUntil: 'networkidle' });
await page.waitForTimeout(5000);
const stepper = page.locator('[data-sx-island="home/stepper"]');
await expect(stepper).toBeVisible({ timeout: 10000 });
const text = await stepper.textContent();
// Should NOT show raw component calls
expect(text).not.toContain('~cssx/tw');
expect(text).not.toContain(':tokens');
// Should show rendered content (colored text)
expect(text.length).toBeGreaterThan(10);
// Stepper navigation should work
const buttons = stepper.locator('button');
await expect(buttons).toHaveCount(2);
const textBefore = await stepper.textContent();
await buttons.last().click();
await page.waitForTimeout(500);
const textAfter = await stepper.textContent();
expect(textAfter).not.toBe(textBefore);
});