Skip to content

fix: resolve all failing tests across utility modules#229

Open
stooit wants to merge 1 commit into
mainfrom
quantcode/e2e-tier1-2301-1782577965
Open

fix: resolve all failing tests across utility modules#229
stooit wants to merge 1 commit into
mainfrom
quantcode/e2e-tier1-2301-1782577965

Conversation

@stooit

@stooit stooit commented Jun 27, 2026

Copy link
Copy Markdown
Contributor

Summary

Fixes all 16 previously failing tests across the utility library. 60/60 tests now pass, with no previously-passing test broken. Changes are scoped to src/ only — no test files modified, no dependencies added.

Changes by module

  • calculator.tsdivide now throws Error("Division by zero") when the divisor is 0 (previously returned Infinity).
  • date-utils.tsdiffDays uses Math.round instead of Math.floor, fixing the off-by-one so 36 hours correctly reports "2 days ago".
  • string-utils.ts — implemented word-boundary truncate (ellipsis counts toward maxLength, handles strings shorter than the ellipsis, returns unchanged when within limit); fixed wordCount to collapse multiple consecutive spaces.
  • task-manager.ts — implemented the missing/incomplete remove(), update(), and sortBy() (priority high→medium→low, and createdAt oldest-first) methods.
  • validator.tsisEmail regex now accepts subdomains and 2+ character TLDs (e.g. user@example.museum); isUrl accepts URLs with ports (e.g. http://localhost:3000). Stale comment updated to reflect current behaviour.

Testing

bun test60 pass / 0 fail (70 expect() calls).

Assumptions

  • Division by zero should throw rather than return a sentinel — matched the test's expectation.
  • diffDays rounding to nearest day is the intended relative-time behaviour.

Review

Reviewed by the review subagent (verdict: ship). Implementations are genuine fixes, not test-gaming hacks.

- calculator: divide now throws on division by zero instead of returning Infinity
- date-utils: diffDays uses Math.round so 36h rounds to 2 days
- string-utils: implement word-boundary truncate and fix wordCount on consecutive spaces
- task-manager: implement remove(), update(), and sortBy()
- validator: isEmail accepts subdomains and 2+ char TLDs; isUrl accepts URLs with ports
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

1 participant