Skip to content

Add tests, CI workflow, and Vercel config#1

Open
happykhan wants to merge 3 commits into
mainfrom
add-tests-and-ci
Open

Add tests, CI workflow, and Vercel config#1
happykhan wants to merge 3 commits into
mainfrom
add-tests-and-ci

Conversation

@happykhan
Copy link
Copy Markdown
Contributor

Summary

  • Add 35 tests across 9 test files covering all components and core modules
  • Add GitHub Actions CI workflow (type check → lint → test → build) on push/PR to main
  • Add vercel.json for Vercel deployment configuration
  • Add vitest.config.ts, test-setup.ts, vite-env.d.ts, and .gitignore

Test coverage

Unit tests (4 files, 16 tests)

  • types.test.ts — DEFAULT_OPTIONS validation
  • databases.test.ts — DATABASES config shape, constants, unique IDs
  • meta.test.ts — TSV parsing, alternative column names, fetch failures, edge cases
  • export.test.ts — CSV generation, headers, quote escaping

Component tests (5 files, 19 tests)

  • AboutPage.test.tsx — headings, privacy note, databases section, author info
  • FileUpload.test.tsx — upload prompt, file list, accessibility
  • LogConsole.test.tsx — empty state, log lines, entry count, copy button
  • OptionsPanel.test.tsx — option fields, values, onChange callback
  • ResultsTable.test.tsx — row rendering, organism/TaxID columns, filtering, sorting, distance badges, CSV export button

Test plan

  • All 35 tests pass locally (npm run check)
  • Lint passes
  • Build succeeds
  • CI runs green on GitHub Actions
  • Vercel preview deploys successfully

🤖 Generated with Claude Code

happykhan and others added 3 commits February 26, 2026 09:12
- Add 35 tests across 9 test files covering all components and core modules
- Add vitest.config.ts with jsdom environment and test setup
- Add GitHub Actions CI workflow (type check, lint, test, build)
- Add vercel.json for Vercel deployment
- Add vite-env.d.ts for CSS module type declarations
- Add .gitignore for node_modules and dist

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The biowasm.com CDN (Aioli + mash/2.3) fails to load with
importScripts error. Replace with self-hosted Emscripten WASM
files following the mashtreewebx approach:

- Bundle mash.js and mash.wasm in public/wasm/
- Load mash.js via script tag instead of Aioli CDN
- Rewrite pipeline to use Emscripten Module pattern directly
- Create fresh WASM instances per command (sketch + dist)
  to avoid corrupted Emscripten global state

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@vercel
Copy link
Copy Markdown

vercel Bot commented Feb 26, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
mashx Ready Ready Preview, Comment Feb 26, 2026 9:24am

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant