Fix CI JS corruption from obfuscator stdout; clean up flaky test guards #81
@@ -207,10 +207,11 @@ jobs:
|
||||
[ -f "$f" ] || continue
|
||||
name=$(basename "$f" .el)
|
||||
echo "Compiling $f..."
|
||||
"$ELC" --target=js --bundle --minify --obfuscate "$f" > "dist/js/${name}.js" || {
|
||||
"$ELC" --target=js --bundle --minify --obfuscate "$f" > /tmp/_elc_out.js || {
|
||||
echo "elc FAILED on $f"
|
||||
exit 1
|
||||
}
|
||||
sed '/^\[javascript-obfuscator/d' /tmp/_elc_out.js > "dist/js/${name}.js"
|
||||
echo " compiled: $f -> dist/js/${name}.js"
|
||||
done
|
||||
rm -f src/js/el_runtime.js
|
||||
|
||||
@@ -7,7 +7,7 @@ import { test, expect } from '@playwright/test';
|
||||
test.describe('Demo chat widget — structure', () => {
|
||||
test.beforeEach(async ({ page }) => {
|
||||
await page.goto('/');
|
||||
await page.waitForLoadState('networkidle');
|
||||
await page.waitForLoadState('domcontentloaded');
|
||||
});
|
||||
|
||||
test('Demo panel (#neuron-demo-panel) is in the DOM', async ({ page }) => {
|
||||
@@ -41,7 +41,7 @@ test.describe('Demo chat widget — auth gate', () => {
|
||||
.forEach(k => localStorage.removeItem(k));
|
||||
});
|
||||
await page.reload();
|
||||
await page.waitForLoadState('networkidle');
|
||||
await page.waitForLoadState('domcontentloaded');
|
||||
});
|
||||
|
||||
test('Send button is disabled when unauthenticated', async ({ page }) => {
|
||||
|
||||
@@ -186,7 +186,6 @@ test('[professional] payment-message div starts hidden', async ({ page }) => {
|
||||
|
||||
test('[professional] buyer-name input is present and fillable', async ({ page }) => {
|
||||
await page.goto('/checkout?plan=professional');
|
||||
await page.waitForFunction(() => typeof (window as any).signUpWithEmail === 'function', { timeout: 10000 });
|
||||
await expect(page.locator('#buyer-name')).toBeAttached();
|
||||
await page.fill('#buyer-name', 'Test User');
|
||||
expect(await page.locator('#buyer-name').inputValue()).toBe('Test User');
|
||||
@@ -194,7 +193,6 @@ test('[professional] buyer-name input is present and fillable', async ({ page })
|
||||
|
||||
test('[professional] buyer-email input is present and fillable', async ({ page }) => {
|
||||
await page.goto('/checkout?plan=professional');
|
||||
await page.waitForFunction(() => typeof (window as any).signUpWithEmail === 'function', { timeout: 10000 });
|
||||
await expect(page.locator('#buyer-email')).toBeAttached();
|
||||
await page.fill('#buyer-email', 'test@example.com');
|
||||
expect(await page.locator('#buyer-email').inputValue()).toBe('test@example.com');
|
||||
|
||||
Reference in New Issue
Block a user