Skip to content

Coverage Report

Coverage Report #1

Triggered via schedule April 25, 2026 02:03
Status Failure
Total duration 1m 0s
Artifacts

coverage.yml

on: schedule
Full Coverage Report
56s
Full Coverage Report
Fit to window
Zoom out
Zoom in

Annotations

9 errors and 1 warning
Full Coverage Report
Process completed with exit code 1.
src/test/visual/visual.spec.ts: frontend/src/test/visual/visual.spec.ts#L32
Error: Playwright Test did not expect test() to be called here. Most common reasons include: - You are calling test() in a configuration file. - You are calling test() in a file that is imported by the configuration file. - You have two different versions of @playwright/test. This usually happens when one of the dependencies in your package.json depends on @playwright/test. ❯ TestTypeImpl._currentSuite node_modules/playwright/lib/common/testType.js:75:13 ❯ TestTypeImpl._createTest node_modules/playwright/lib/common/testType.js:88:24 ❯ Module.<anonymous> node_modules/playwright/lib/transform/transform.js:282:12 ❯ src/test/visual/visual.spec.ts:32:1
src/components/ActivityFeed/ActivityFeed.test.tsx > ActivityFeed > calls fetchEvents again when refresh button is clicked: frontend/src/components/ActivityFeed/ActivityFeed.test.tsx#L266
AssertionError: expected "spy" to be called 2 times, but got 1 times Ignored nodes: comments, script, style <html> <head /> <body> <div> <section aria-label="Activity feed" class="activity-feed" > <div class="activity-feed__header" > <h3 class="activity-feed__title" > Activity </h3> <button aria-label="Refresh activity feed" class="activity-feed__refresh-btn" type="button" > <svg aria-hidden="true" fill="currentColor" height="18" viewBox="0 0 24 24" width="18" > <path d="M17.65 6.35C16.2 4.9 14.21 4 12 4c-4.42 0-7.99 3.58-7.99 8s3.57 8 7.99 8c3.73 0 6.84-2.55 7.73-6h-2.08c-.82 2.33-3.04 4-5.65 4-3.31 0-6-2.69-6-6s2.69-6 6-6c1.66 0 3.14.69 4.22 1.78L13 11h7V4l-2.35 2.35z" /> </svg> </button> </div> <div aria-label="Filter by activity type" class="activity-feed__filters" role="group" > <svg aria-hidden="true" class="activity-feed__filter-icon" fill="currentColor" height="16" viewBox="0 0 24 24" width="16" > <path d="M10 18h4v-2h-4v2zM3 6v2h18V6H3zm3 7h12v-2H6v2z" /> </svg> <button aria-pressed="true" class="activity-feed__filter-btn activity-feed__filter-btn--active" type="button" > All </button> <button aria-pressed="false" class="activity-feed__filter-btn" type="button" > Contributions </button> <button aria-pressed="false" class="activity-feed__filter-btn" type="button" > Payouts </button> <button aria-pressed="false" class="activity-feed__filter-btn" type="button" > Members </button> <button aria-pressed="false" class="activity-feed__filter-btn" type="button" > Groups </button> </div> <div aria-busy="false" aria-label="Recent activity" class="activity-feed__scroll-area" role="feed" style="max-height: 600px;" > <div class="empty-state activity-feed__empty" > <div class="empty-state__content" > <h3 class="empty-state__title" > No activity yet </h3> <p class="empty-state__description" > Contributions, payouts, and member joins will appear here. </p> </div> </div> </div> </section> </div> </body> </html> ❯ src/components/ActivityFeed/ActivityFeed.test.tsx:266:49 ❯ runWithExpensiveErrorDiagnosticsDisabled node_modules/@testing-library/dom/dist/config.js:47:12 ❯ checkCallback node_modules/@testing-library/dom/dist/wait-for.js:124:77 ❯ Timeout.checkRealTimersCallback node_modules/@testing-library/dom/dist/wait-for.js:118:16
src/test/groupApi.test.ts > groupApi stubs > fetchGroups > returns an empty array: frontend/src/test/groupApi.test.ts#L24
AssertionError: expected [ { id: '1', …(7) }, …(11) ] to have a length of +0 but got 12 - Expected + Received - 0 + 12 ❯ src/test/groupApi.test.ts:24:22
src/test/Header.test.tsx > Header > toggles mobile menu when menu button is clicked: frontend/src/hooks/useTheme.ts#L16
Error: useTheme must be used within AppThemeProvider ❯ Module.useTheme src/hooks/useTheme.ts:16:11 ❯ ThemeToggle src/components/ThemeToggle.tsx:22:49 ❯ Object.react_stack_bottom_frame node_modules/react-dom/cjs/react-dom-client.development.js:25904:20 ❯ renderWithHooks node_modules/react-dom/cjs/react-dom-client.development.js:7662:22 ❯ updateFunctionComponent node_modules/react-dom/cjs/react-dom-client.development.js:10166:19 ❯ beginWork node_modules/react-dom/cjs/react-dom-client.development.js:11778:18 ❯ runWithFiberInDEV node_modules/react-dom/cjs/react-dom-client.development.js:874:13 ❯ performUnitOfWork node_modules/react-dom/cjs/react-dom-client.development.js:17641:22 ❯ workLoopSync node_modules/react-dom/cjs/react-dom-client.development.js:17469:41 ❯ renderRootSync node_modules/react-dom/cjs/react-dom-client.development.js:17450:11
src/test/Header.test.tsx > Header > renders Connect Wallet button initially: frontend/src/hooks/useTheme.ts#L16
Error: useTheme must be used within AppThemeProvider ❯ Module.useTheme src/hooks/useTheme.ts:16:11 ❯ ThemeToggle src/components/ThemeToggle.tsx:22:49 ❯ Object.react_stack_bottom_frame node_modules/react-dom/cjs/react-dom-client.development.js:25904:20 ❯ renderWithHooks node_modules/react-dom/cjs/react-dom-client.development.js:7662:22 ❯ updateFunctionComponent node_modules/react-dom/cjs/react-dom-client.development.js:10166:19 ❯ beginWork node_modules/react-dom/cjs/react-dom-client.development.js:11778:18 ❯ runWithFiberInDEV node_modules/react-dom/cjs/react-dom-client.development.js:874:13 ❯ performUnitOfWork node_modules/react-dom/cjs/react-dom-client.development.js:17641:22 ❯ workLoopSync node_modules/react-dom/cjs/react-dom-client.development.js:17469:41 ❯ renderRootSync node_modules/react-dom/cjs/react-dom-client.development.js:17450:11
src/test/Header.test.tsx > Header > renders navigation links: frontend/src/hooks/useTheme.ts#L16
Error: useTheme must be used within AppThemeProvider ❯ Module.useTheme src/hooks/useTheme.ts:16:11 ❯ ThemeToggle src/components/ThemeToggle.tsx:22:49 ❯ Object.react_stack_bottom_frame node_modules/react-dom/cjs/react-dom-client.development.js:25904:20 ❯ renderWithHooks node_modules/react-dom/cjs/react-dom-client.development.js:7662:22 ❯ updateFunctionComponent node_modules/react-dom/cjs/react-dom-client.development.js:10166:19 ❯ beginWork node_modules/react-dom/cjs/react-dom-client.development.js:11778:18 ❯ runWithFiberInDEV node_modules/react-dom/cjs/react-dom-client.development.js:874:13 ❯ performUnitOfWork node_modules/react-dom/cjs/react-dom-client.development.js:17641:22 ❯ workLoopSync node_modules/react-dom/cjs/react-dom-client.development.js:17469:41 ❯ renderRootSync node_modules/react-dom/cjs/react-dom-client.development.js:17450:11
src/test/Header.test.tsx > Header > renders the logo text: frontend/src/hooks/useTheme.ts#L16
Error: useTheme must be used within AppThemeProvider ❯ Module.useTheme src/hooks/useTheme.ts:16:11 ❯ ThemeToggle src/components/ThemeToggle.tsx:22:49 ❯ Object.react_stack_bottom_frame node_modules/react-dom/cjs/react-dom-client.development.js:25904:20 ❯ renderWithHooks node_modules/react-dom/cjs/react-dom-client.development.js:7662:22 ❯ updateFunctionComponent node_modules/react-dom/cjs/react-dom-client.development.js:10166:19 ❯ beginWork node_modules/react-dom/cjs/react-dom-client.development.js:11778:18 ❯ runWithFiberInDEV node_modules/react-dom/cjs/react-dom-client.development.js:874:13 ❯ performUnitOfWork node_modules/react-dom/cjs/react-dom-client.development.js:17641:22 ❯ workLoopSync node_modules/react-dom/cjs/react-dom-client.development.js:17469:41 ❯ renderRootSync node_modules/react-dom/cjs/react-dom-client.development.js:17450:11
src/test/CreateGroupForm.test.tsx > CreateGroupForm > calls onSubmit with correct GroupData including stroops conversion: frontend/src/test/CreateGroupForm.test.tsx#L133
AssertionError: expected "spy" to be called with arguments: [ { name: 'Test Group', …(5) } ] Received: 1st spy call: Array [ Object { "contribution_amount": 100000000, "cycle_duration": 604800, "description": "A test description", + "image_url": "", "max_members": 5, "min_members": 2, "name": "Test Group", }, ] Number of calls: 1 ❯ src/test/CreateGroupForm.test.tsx:133:22
Full Coverage Report
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v4, actions/setup-node@v4. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/