Skip to content

Unit tests for isPast and rsvpId #99

Open

Description

@geetxnshgoyal

What

isPast and rsvpId in lib/events.ts decide whether an event is over, and build RSVP document ids.

There are no tests for it yet.

Cover at least

  • an event whose endsAt is before now is past
  • with no endsAt, it falls back to startsAt
  • an event ending exactly at now is not past
  • pass now explicitly, never rely on the real clock
  • rsvpId is deterministic, and differs for different users or events

How

  • Create lib/events.test.ts next to the code. Follow the style of lib/github-auth.test.ts.
  • Run npm test. Then break the code on purpose (flip a condition) and watch at least one of your tests fail. Paste that failure output in the PR description, then undo the break.
  • Test behaviour through the exported function only. Don't change the source file unless you find a bug, and if you do, stop and comment on this issue first.

Size: ~30–60 lines of tests, 0 lines of source.


Taking this? Comment /assign and the bot assigns you if it's free. One issue per person at a time; comment /unassign to hand it back. That's milestone 2 of the 10 PR Journey. Setup, the checks CI runs, and how to open the PR from your fork are in CONTRIBUTING.md. Put Fixes #<this issue> in your PR description.

Activity

  1. Tejasrastogi commented on Sep 28, 2026

    @Tejasrastogi

    /assign

  2. github-actions commented on Sep 28, 2026

    @github-actions

    @Tejasrastogi it's yours! 🎉

    1. Fork the repo and create a branch: see CONTRIBUTING.md.
    2. Open your PR from your fork into main, with Fixes #99 in the description.
    3. Make sure CI (Lint, Test, Type-check & build) is green.

    Can't finish it? Comment /unassign so someone else can pick it up.

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

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions