Skip to content

test: refactor health and social-links controller specs to use pure m…#1332

Merged
aji70 merged 1 commit into
MyFanss:mainfrom
bolu26:feat/health-and-social-links-tests
Jun 29, 2026
Merged

test: refactor health and social-links controller specs to use pure m…#1332
aji70 merged 1 commit into
MyFanss:mainfrom
bolu26:feat/health-and-social-links-tests

Conversation

@bolu26

@bolu26 bolu26 commented Jun 29, 2026

Copy link
Copy Markdown
Contributor

this pr closes #1061
this pr closes #1062

Replaces real-service-with-spies setup in health controller spec with a single mockHealthService object covering all endpoints including getAggregatedHealth. Rewrites social-links controller spec to use clean jest.fn() mocks aligned with the current createSocialLinks / updateSocialLinks / listSocialLinks API and adds describe blocks for each handler.

Summary

Changes

Test Plan

Automated tests added or updated

  • Unit tests (backend/src/**/*.spec.ts) — service/guard/decorator logic in isolation
  • Integration / e2e tests (backend/test/**/*.e2e-spec.ts) — HTTP round-trips with mocked infrastructure
  • Frontend component tests (frontend/src/**/*.test.{ts,tsx}) — React component behaviour
  • Frontend e2e tests (frontend/e2e/**/*.spec.ts) — Playwright browser flows
  • Contract tests (contract/) — Soroban/Rust unit tests via cargo test
  • No new tests required — explain why: ___

How to run the tests locally

# Backend unit tests
cd backend && npm test

# Backend e2e tests (requires no live DB — uses in-memory mocks)
cd backend && npm run test:e2e

# Frontend component tests
cd frontend && npx vitest run

# Frontend e2e tests (requires dev server on :3000 and API on :3001)
cd frontend && npx playwright test

# Contract tests
cd contract && cargo test

Manual verification checklist

  • Happy path works end-to-end in a local environment
  • Error / edge cases handled gracefully (stale state, invalid input, disconnected wallet)
  • No regressions in closely related API or UI flows
  • Rate-limiting, auth guards, and feature flags behave as expected where touched
  • Linting passes: cd backend && npm run lint / cd frontend && npm run lint

Related issues

Notes for reviewers

…ocked service

Replaces real-service-with-spies setup in health controller spec with a
single mockHealthService object covering all endpoints including
getAggregatedHealth. Rewrites social-links controller spec to use clean
jest.fn() mocks aligned with the current createSocialLinks /
updateSocialLinks / listSocialLinks API and adds describe blocks for
each handler.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@drips-wave

drips-wave Bot commented Jun 29, 2026

Copy link
Copy Markdown

@bolu26 Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits.

You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀

Learn more about application limits

@aji70 aji70 merged commit b9c778b into MyFanss:main Jun 29, 2026
2 of 6 checks passed
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.

Backend Health: Add controller unit tests with mocked service Backend Social links: Add rate limiting on write endpoints

2 participants