pcbjam/tests
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Viktor Vaczi 0db33b10f7 Fix Emscripten immediate mode GL and add comprehensive tests
- Fix immediate mode (glBegin/glEnd) by using color-per-vertex pattern
- Document Emscripten's requirement for color per vertex in GL_README.md
- Add OpenGL test tab with visual rendering verification
- Test GL_TRIANGLES, GL_QUADS, GL_LINES, GL_LINE_STRIP, GL_LINE_LOOP
- Update wxwidgets submodule with improved context management

Key finding: Emscripten's LEGACY_GL_EMULATION requires glColor*() to be
called before EACH glVertex*() call, not using OpenGL's "current color"
semantic. This is because the stride calculation expects interleaved
vertex data with color per vertex.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-28 20:14:59 +01:00
..
e2e Fix Emscripten immediate mode GL and add comprehensive tests 2025-11-28 20:14:59 +01:00
wasm-app Fix Emscripten immediate mode GL and add comprehensive tests 2025-11-28 20:14:59 +01:00
GL_README.md Fix Emscripten immediate mode GL and add comprehensive tests 2025-11-28 20:14:59 +01:00
package-lock.json Add Playwright test infrastructure for wxWidgets WASM port 2025-11-28 13:10:05 +01:00
package.json Add Playwright test infrastructure for wxWidgets WASM port 2025-11-28 13:10:05 +01:00
playwright.config.ts Add Playwright test infrastructure for wxWidgets WASM port 2025-11-28 13:10:05 +01:00
README.md Add Playwright test infrastructure for wxWidgets WASM port 2025-11-28 13:10:05 +01:00

KiCad WASM Tests

Playwright tests for verifying the wxWidgets WASM port.

Prerequisites

  • Node.js 18+
  • Emscripten SDK (for building)

Building the Test App

../scripts/build-wasm-test.sh

This builds wasm-app/minimal_test.{html,js,wasm}.

Running Tests

npm install
npm test

Viewing the App Directly

Start a local server in the wasm-app directory:

cd wasm-app
npx serve .

Then open http://localhost:3000/minimal_test.html in your browser.

Alternative using Python:

cd wasm-app
python3 -m http.server 8000

Then open http://localhost:8000/minimal_test.html