Repository navigation
Conversation
|
Welcome @Mateiki, and thanks for your first PR here! Code Quality and the exploitation suite are running now. You can follow them in the Checks tab. If one goes red and the message isn't obvious, ask in this thread rather than force-pushing blind. Contributing guide · Code of conduct. A maintainer will pick this up shortly. |
4f85912 to
d46a687
Compare
kOaDT
left a comment
There was a problem hiding this comment.
Thanks for the PR, and welcome! I pushed a commit on top of yours before merging:
- The tests now write a real PDF into a temporary directory instead of mocking fs and pdf-lib. The old second test checked that mkdir wasn't called, which pins the implementation rather than the behaviour (mkdir with recursive: true is a no-op on an existing folder).
- Added cases for item-name truncation at 40 chars, Date/string createdAt, two-decimal amounts, and a failing write.
About the create-oss-store-node-guard.test.ts failure you mentioned: it passes on main in CI and locally on Node 24. Could you share the failure output, your node --version and your OS? It may be an environment issue worth fixing separately.
|
Merged — and it's your first one here, @Mateiki. Thank you! If the project was useful to you, a star helps other people find it! |
|
Thanks for checking, glad it's sorted! The PR is merged and your commits are on main. Welcome as a contributor 🙌 |

Description
Add unit tests for
generateInvoicecovering invoice path generation, file writing, and invoice directory creation.Type of change
Testing done
npx jest --runInBand tests/unit/invoice.test.ts— passed (2 tests)npm run lint— passed with existing warningsnpm run format:check— passednpm run test:unit— one unrelated pre-existing failure increate-oss-store-node-guard.test.tsChecklist
If adding a new challenge
Not applicable.
prisma/flags.tswith formatOSS{...}flagHints(vague → near-solution)content/vulnerabilities/(concept + fix only — no exploit steps, payloads, or flag value)tests/helpers/flags.tsdocs/src/data/blog/, with a matchingwalkthroughSlugdocs/src/data/roadmap.ts(slug, difficulty, category and walkthrough matching the flag)README.mdandEDUCATORS.md(including the OWASP grid and syllabus plans)