Skip to content

Test gaps: memoize concurrency, file_id resend, vacuous assertions, /verbose, boundaries #9

Description

@miridius

From the /review-pr baseline (pr-test-analyzer), highest value first:

  • memoize: rejection-recovery and concurrent-pending-dedup are untested with real promises (utils.test.ts mocks Bun.peek itself). This protects the bot's core "two users send the same URL" behavior.
  • sendVideo cached-file_id resend path has no unit coverage (only gated e2e): assert cached id is sent, size check skipped, no rewrite/unlink.
  • Happy-path handler tests assert toHaveBeenCalled() without arguments — wrong-chat/wrong-reply regressions would pass.
  • Inline query: result array shape/captions unasserted; too-large silent return unpinned.
  • Multiple URLs in one message; per-URL error isolation.
  • /verbose flag: propagation, DM-only gating, memoize bypass — zero coverage.
  • Boundaries: exactly 20:00 duration; exactly MAX_FILE_SIZE_BYTES; sponsor-trim dropping below threshold.
  • Non-requester cancel: assert pending was actually restored (putPending) by having the requester act afterwards.
  • MockBotApi can't simulate group chats (rejects chat_id != user.id) so confirmation flow never runs through real Telegraf serialization; messageResponse hardcodes type:'private'.
  • waitUntil times out silently → vacuous-pass risk; consider throwing.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions