Skip to content

chore: setup vitest testing framework and ci pipeline foundation - #37

Merged
JhaSourav07 merged 32 commits into
mainfrom
chore/setup-testing-pipeline
Apr 19, 2026
Merged

JhaSourav07 merged 32 commits into
mainfrom
chore/setup-testing-pipeline

Conversation

@JhaSourav07

@JhaSourav07 JhaSourav07 commented Apr 19, 2026 •

Copy link
Copy Markdown
Owner

Description

This Pull Request lays the foundation for a robust, automated CI/CD pipeline for QuickPDF. As the project grows during NSoC 2026, it is critical to ensure that our core PDF manipulation logic remains stable as new contributors submit code.

This PR introduces Vitest as our lightweight, lightning-fast unit testing framework. We are intentionally avoiding heavy end-to-end browser testing (like Playwright) to keep the contribution barrier low and the CI pipeline fast.

What's included in this PR so far:

  • 📦 Installed vitest as a development dependency.
  • ⚙️ Configured vite.config.js to support Node-based test execution for pdf-lib ArrayBuffers.
  • 📜 Added test and test:watch scripts to package.json.

Implementation Roadmap (15-20 Commits)

This PR will remain open while I complete the remaining phases of the CI/CD implementation:

  • Phase 1: Environment Setup (Vitest install, Vite config, NPM scripts)
  • Phase 2: Core Logic Tests (Unit tests for mergePdfs, splitPdf, and other utilities inside pdf.service.js)
  • Phase 3: GitHub Actions Setup (Linting and Test automation on PRs)
  • Phase 4: CD & Polish (Vercel deployment gates and README badges)

How to test locally

Once pulled, simply run:

npm run test

@vercel

vercel Bot commented Apr 19, 2026 •

Copy link
Copy Markdown
Contributor

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

1 Skipped Deployment
Project Deployment Actions Updated (UTC)
quick-pdf Ignored Ignored Preview Apr 19, 2026 9:57pm

…Callback dependencies, and configure Vite manual chunk splitting

This comment was marked as low quality.

@JhaSourav07
JhaSourav07 merged commit a43fbfe into main Apr 19, 2026
3 checks passed
@JhaSourav07
JhaSourav07 deleted the chore/setup-testing-pipeline branch April 19, 2026 22:02
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.

2 participants