Skip to content

[15/N] Add unit and integration tests for root App component - #106

Open
karkir0003 wants to merge 15 commits into
csvistool:masterfrom
karkir0003:karthik/kar-22-add-unit-and-integration-tests-for-root-app-component
Open

karkir0003 wants to merge 15 commits into
csvistool:masterfrom
karkir0003:karthik/kar-22-add-unit-and-integration-tests-for-root-app-component

Conversation

@karkir0003

@karkir0003 karkir0003 commented Oct 3, 2026 •

Copy link
Copy Markdown
Contributor

🥞 Stack

  1. ⬅️ [1/N] Update CI to run frontend unit tests #91 (Update CI to run frontend unit tests)
  2. ⬅️ [2/N] Configure React Testing Library and Setup Tests #92 (Configure React Testing Library and Setup Tests)
  3. ⬅️ [3/N] Add unit tests for SideButton component #94 (Add unit tests for SideButton component)
  4. ⬅️ [4/N] Add unit tests for SearchFilter component #95 (Add unit tests for SearchFilter component)
  5. ⬅️ [5/N] Add unit tests for Header and Footer components #96 (Add unit tests for Header and Footer components)
  6. ⬅️ [6/N] Add unit tests for Blob mascot component #97 (Add unit tests for Blob mascot component)
  7. ⬅️ [7/N] Add unit tests for AboutScreen screen #98 (Add unit tests for AboutScreen screen)
  8. ⬅️ [8/N] Add integration tests for HomeScreen screen #99 (Add integration tests for HomeScreen screen)
  9. ⬅️ [9/N] Add unit tests for AlgorithmNotFound404 component #100 (Add unit tests for AlgorithmNotFound404 component)
  10. ⬅️ [10/N] Add integration tests for AlgoScreen screen #101 (Add integration tests for AlgoScreen screen)
  11. ⬅️ [11/N] Add unit tests for ModalSidebarSectionTab component #102 (Add unit tests for ModalSidebarSectionTab component)
  12. ⬅️ [12/N] Add unit tests for BigOModal component #103 (Add unit tests for BigOModal component)
  13. ⬅️ [13/N] Add unit tests for Pseudocode component #104 (Add unit tests for Pseudocode component)
  14. ⬅️ [14/N] Add unit and integration tests for AlgoSection component #105 (Add unit and integration tests for AlgoSection component)
  15. 👉 #CURRENT — Add unit and integration tests for root App component (this PR)
  16. ➡️ [16/N] Add unit tests for animation events and undo functions #107 (Add unit tests for animation events and undo functions)

Addresses #93

Context

Adds unit and integration test coverage for the root App.js component to verify Google Analytics initialization, theme persistence and toggling with cookies, document body attribute synchronization, and top-level client-side routing.

Changes Made

  • Introduced src/__tests__/App.test.js covering App.
  • Tested Google Analytics initialization (ReactGA.initialize) and initial home pageview tracking (ReactGA.send).
  • Tested default theme loading and stored cookie theme persistence via js-cookie.
  • Tested theme toggling interactions, cookie persistence, and document.body data-theme attribute updates.
  • Tested top-level routing to AboutScreen (/about), AlgoScreen (/:algo), and fallback to HomeScreen (*).

Test Plan

  • Ran npm test -- --watchAll=false
  • Ran npm run lint and npx prettier --check src/
  • Verified 100% statement, branch, function, and line coverage for App.js

This branch has not been deployed

No deployments
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.

1 participant