Skip to content

Coverage Report

Coverage Report #27

Triggered via schedule May 21, 2026 02:53
Status Failure
Total duration 1m 2s
Artifacts

coverage.yml

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

Annotations

10 errors and 1 warning
src/test/TransactionConfirmModal.test.tsx > TransactionConfirmModal – error step > shows retry button: frontend/src/test/TransactionConfirmModal.test.tsx#L259
TestingLibraryElementError: Found multiple elements with the text: /transaction failed/i Here are the matching elements: Ignored nodes: comments, script, style <h6 class="MuiTypography-root MuiTypography-h6 css-h9fkkg-MuiTypography-root" > Transaction Failed </h6> Ignored nodes: comments, script, style <h6 class="MuiTypography-root MuiTypography-h6 css-ib1oun-MuiTypography-root" > Transaction Failed </h6> (If this is intentional, then use the `*AllBy*` variant of the query (like `queryAllByText`, `getAllByText`, or `findAllByText`)). Ignored nodes: comments, script, style <body style="padding-right: 1024px; overflow: hidden;" > <div aria-hidden="true" /> <div class="MuiDialog-root MuiModal-root css-1424xw8-MuiModal-root-MuiDialog-root" role="presentation" > <div aria-hidden="true" class="MuiBackdrop-root MuiModal-backdrop MuiDialog-backdrop css-1cennmq-MuiBackdrop-root-MuiDialog-backdrop" style="opacity: 1; transition: opacity 225ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;" /> <div data-testid="sentinelStart" tabindex="0" /> <div class="MuiDialog-container MuiDialog-scrollPaper css-19do60a-MuiDialog-container" role="presentation" style="opacity: 1; transition: opacity 225ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;" tabindex="-1" > <div aria-labelledby="tx-confirm-title" aria-modal="true" class="MuiPaper-root MuiPaper-elevation MuiPaper-rounded MuiPaper-elevation24 MuiDialog-paper MuiDialog-paperScrollPaper MuiDialog-paperWidthSm MuiDialog-paperFullWidth css-16htz67-MuiPaper-root-MuiDialog-paper" role="dialog" style="--Paper-shadow: 0px 11px 15px -7px rgba(0,0,0,0.2),0px 24px 38px 3px rgba(0,0,0,0.14),0px 9px 46px 8px rgba(0,0,0,0.12);" > <h2 class="MuiTypography-root MuiTypography-h6 MuiDialogTitle-root css-dewjw6-MuiTypography-root-MuiDialogTitle-root" id="tx-confirm-title" > <h6 class="MuiTypography-root MuiTypography-h6 css-h9fkkg-MuiTypography-root" > Transaction Failed </h6> <button aria-label="Close dialog" class="MuiButtonBase-root MuiIconButton-root MuiIconButton-sizeSmall css-155wbr6-MuiButtonBase-root-MuiIconButton-root" tabindex="0" type="button" > <svg fill="none" height="18" stroke="currentColor" viewBox="0 0 24 24" width="18" > <path d="M6 18L18 6M6 6l12 12" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" /> </svg> </button> </h2> <div class="MuiDialogContent-root css-1foygqf-MuiDialogContent-root" > <div class="MuiStack-root css-1e1jdoy-MuiStack-root" > <div class="MuiBox-root css-1aa10dt" > <svg fill="none" height="32" stroke="currentColor" viewBox="0 0 24 24" width="32" > <path d="M6 18L18 6M6 6l12 12" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" /> </svg> </div> <div class="MuiStack-root css-aha7cr-MuiStack-root" > <h6 class="MuiTypography-root MuiTypography-h6 css-ib1oun-MuiTypography-root" > Transaction Failed </h6> <p class="MuiTypography-root MuiTypography-body2 css-i6m2dk-MuiTypography-root" > User rejected the request </p> </div> <div class="MuiBox-root css-10egq61" > <button
src/test/TransactionConfirmModal.test.tsx > TransactionConfirmModal – error step > calls onError callback: frontend/src/test/TransactionConfirmModal.test.tsx#L259
TestingLibraryElementError: Found multiple elements with the text: /transaction failed/i Here are the matching elements: Ignored nodes: comments, script, style <h6 class="MuiTypography-root MuiTypography-h6 css-h9fkkg-MuiTypography-root" > Transaction Failed </h6> Ignored nodes: comments, script, style <h6 class="MuiTypography-root MuiTypography-h6 css-ib1oun-MuiTypography-root" > Transaction Failed </h6> (If this is intentional, then use the `*AllBy*` variant of the query (like `queryAllByText`, `getAllByText`, or `findAllByText`)). Ignored nodes: comments, script, style <body style="padding-right: 1024px; overflow: hidden;" > <div aria-hidden="true" /> <div class="MuiDialog-root MuiModal-root css-1424xw8-MuiModal-root-MuiDialog-root" role="presentation" > <div aria-hidden="true" class="MuiBackdrop-root MuiModal-backdrop MuiDialog-backdrop css-1cennmq-MuiBackdrop-root-MuiDialog-backdrop" style="opacity: 1; transition: opacity 225ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;" /> <div data-testid="sentinelStart" tabindex="0" /> <div class="MuiDialog-container MuiDialog-scrollPaper css-19do60a-MuiDialog-container" role="presentation" style="opacity: 1; transition: opacity 225ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;" tabindex="-1" > <div aria-labelledby="tx-confirm-title" aria-modal="true" class="MuiPaper-root MuiPaper-elevation MuiPaper-rounded MuiPaper-elevation24 MuiDialog-paper MuiDialog-paperScrollPaper MuiDialog-paperWidthSm MuiDialog-paperFullWidth css-16htz67-MuiPaper-root-MuiDialog-paper" role="dialog" style="--Paper-shadow: 0px 11px 15px -7px rgba(0,0,0,0.2),0px 24px 38px 3px rgba(0,0,0,0.14),0px 9px 46px 8px rgba(0,0,0,0.12);" > <h2 class="MuiTypography-root MuiTypography-h6 MuiDialogTitle-root css-dewjw6-MuiTypography-root-MuiDialogTitle-root" id="tx-confirm-title" > <h6 class="MuiTypography-root MuiTypography-h6 css-h9fkkg-MuiTypography-root" > Transaction Failed </h6> <button aria-label="Close dialog" class="MuiButtonBase-root MuiIconButton-root MuiIconButton-sizeSmall css-155wbr6-MuiButtonBase-root-MuiIconButton-root" tabindex="0" type="button" > <svg fill="none" height="18" stroke="currentColor" viewBox="0 0 24 24" width="18" > <path d="M6 18L18 6M6 6l12 12" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" /> </svg> </button> </h2> <div class="MuiDialogContent-root css-1foygqf-MuiDialogContent-root" > <div class="MuiStack-root css-1e1jdoy-MuiStack-root" > <div class="MuiBox-root css-1aa10dt" > <svg fill="none" height="32" stroke="currentColor" viewBox="0 0 24 24" width="32" > <path d="M6 18L18 6M6 6l12 12" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" /> </svg> </div> <div class="MuiStack-root css-aha7cr-MuiStack-root" > <h6 class="MuiTypography-root MuiTypography-h6 css-ib1oun-MuiTypography-root" > Transaction Failed </h6> <p class="MuiTypography-root MuiTypography-body2 css-i6m2dk-MuiTypography-root" > User rejected the request </p> </div> <div class="MuiBox-root css-10egq61" > <button
src/test/TransactionConfirmModal.test.tsx > TransactionConfirmModal – error step > shows error message: frontend/src/test/TransactionConfirmModal.test.tsx#L259
TestingLibraryElementError: Found multiple elements with the text: /transaction failed/i Here are the matching elements: Ignored nodes: comments, script, style <h6 class="MuiTypography-root MuiTypography-h6 css-h9fkkg-MuiTypography-root" > Transaction Failed </h6> Ignored nodes: comments, script, style <h6 class="MuiTypography-root MuiTypography-h6 css-ib1oun-MuiTypography-root" > Transaction Failed </h6> (If this is intentional, then use the `*AllBy*` variant of the query (like `queryAllByText`, `getAllByText`, or `findAllByText`)). Ignored nodes: comments, script, style <body style="padding-right: 1024px; overflow: hidden;" > <div aria-hidden="true" /> <div class="MuiDialog-root MuiModal-root css-1424xw8-MuiModal-root-MuiDialog-root" role="presentation" > <div aria-hidden="true" class="MuiBackdrop-root MuiModal-backdrop MuiDialog-backdrop css-1cennmq-MuiBackdrop-root-MuiDialog-backdrop" style="opacity: 1; transition: opacity 225ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;" /> <div data-testid="sentinelStart" tabindex="0" /> <div class="MuiDialog-container MuiDialog-scrollPaper css-19do60a-MuiDialog-container" role="presentation" style="opacity: 1; transition: opacity 225ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;" tabindex="-1" > <div aria-labelledby="tx-confirm-title" aria-modal="true" class="MuiPaper-root MuiPaper-elevation MuiPaper-rounded MuiPaper-elevation24 MuiDialog-paper MuiDialog-paperScrollPaper MuiDialog-paperWidthSm MuiDialog-paperFullWidth css-16htz67-MuiPaper-root-MuiDialog-paper" role="dialog" style="--Paper-shadow: 0px 11px 15px -7px rgba(0,0,0,0.2),0px 24px 38px 3px rgba(0,0,0,0.14),0px 9px 46px 8px rgba(0,0,0,0.12);" > <h2 class="MuiTypography-root MuiTypography-h6 MuiDialogTitle-root css-dewjw6-MuiTypography-root-MuiDialogTitle-root" id="tx-confirm-title" > <h6 class="MuiTypography-root MuiTypography-h6 css-h9fkkg-MuiTypography-root" > Transaction Failed </h6> <button aria-label="Close dialog" class="MuiButtonBase-root MuiIconButton-root MuiIconButton-sizeSmall css-155wbr6-MuiButtonBase-root-MuiIconButton-root" tabindex="0" type="button" > <svg fill="none" height="18" stroke="currentColor" viewBox="0 0 24 24" width="18" > <path d="M6 18L18 6M6 6l12 12" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" /> </svg> </button> </h2> <div class="MuiDialogContent-root css-1foygqf-MuiDialogContent-root" > <div class="MuiStack-root css-1e1jdoy-MuiStack-root" > <div class="MuiBox-root css-1aa10dt" > <svg fill="none" height="32" stroke="currentColor" viewBox="0 0 24 24" width="32" > <path d="M6 18L18 6M6 6l12 12" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" /> </svg> </div> <div class="MuiStack-root css-aha7cr-MuiStack-root" > <h6 class="MuiTypography-root MuiTypography-h6 css-ib1oun-MuiTypography-root" > Transaction Failed </h6> <p class="MuiTypography-root MuiTypography-body2 css-i6m2dk-MuiTypography-root" > User rejected the request </p> </div> <div class="MuiBox-root css-10egq61" > <button
src/test/TransactionConfirmModal.test.tsx > TransactionConfirmModal – review step > shows estimated fee: frontend/src/test/TransactionConfirmModal.test.tsx#L85
TestingLibraryElementError: Found multiple elements with the text: /0\.00001 XLM/ Here are the matching elements: Ignored nodes: comments, script, style <p class="MuiTypography-root MuiTypography-body2 css-d9g04j-MuiTypography-root" > ~0.00001 XLM </p> Ignored nodes: comments, script, style <p class="MuiTypography-root MuiTypography-body2 css-10tiths-MuiTypography-root" > 250.00001 XLM </p> (If this is intentional, then use the `*AllBy*` variant of the query (like `queryAllByText`, `getAllByText`, or `findAllByText`)). Ignored nodes: comments, script, style <body style="padding-right: 1024px; overflow: hidden;" > <div aria-hidden="true" /> <div class="MuiDialog-root MuiModal-root css-1424xw8-MuiModal-root-MuiDialog-root" role="presentation" > <div aria-hidden="true" class="MuiBackdrop-root MuiModal-backdrop MuiDialog-backdrop css-1cennmq-MuiBackdrop-root-MuiDialog-backdrop" style="opacity: 1; transition: opacity 225ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;" /> <div data-testid="sentinelStart" tabindex="0" /> <div class="MuiDialog-container MuiDialog-scrollPaper css-19do60a-MuiDialog-container" role="presentation" style="opacity: 1; transition: opacity 225ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;" tabindex="-1" > <div aria-labelledby="tx-confirm-title" aria-modal="true" class="MuiPaper-root MuiPaper-elevation MuiPaper-rounded MuiPaper-elevation24 MuiDialog-paper MuiDialog-paperScrollPaper MuiDialog-paperWidthSm MuiDialog-paperFullWidth css-16htz67-MuiPaper-root-MuiDialog-paper" role="dialog" style="--Paper-shadow: 0px 11px 15px -7px rgba(0,0,0,0.2),0px 24px 38px 3px rgba(0,0,0,0.14),0px 9px 46px 8px rgba(0,0,0,0.12);" > <h2 class="MuiTypography-root MuiTypography-h6 MuiDialogTitle-root css-dewjw6-MuiTypography-root-MuiDialogTitle-root" id="tx-confirm-title" > <h6 class="MuiTypography-root MuiTypography-h6 css-h9fkkg-MuiTypography-root" > Confirm Transaction </h6> <button aria-label="Close dialog" class="MuiButtonBase-root MuiIconButton-root MuiIconButton-sizeSmall css-155wbr6-MuiButtonBase-root-MuiIconButton-root" tabindex="0" type="button" > <svg fill="none" height="18" stroke="currentColor" viewBox="0 0 24 24" width="18" > <path d="M6 18L18 6M6 6l12 12" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" /> </svg> </button> </h2> <div class="MuiBox-root css-utolp8" > <div class="MuiStepper-root MuiStepper-horizontal MuiStepper-alternativeLabel css-xijkab-MuiStepper-root" > <div class="MuiStep-root MuiStep-horizontal MuiStep-alternativeLabel css-1eqxcs7-MuiStep-root" > <span class="MuiStepLabel-root MuiStepLabel-horizontal MuiStepLabel-alternativeLabel css-3yr9gi-MuiStepLabel-root" > <span class="MuiStepLabel-iconContainer Mui-active MuiStepLabel-alternativeLabel css-1b2ju2j-MuiStepLabel-iconContainer" > <svg aria-hidden="true" class="MuiSvgIcon-root MuiSvgIcon-fontSizeMedium MuiStepIcon-root Mui-active css-1t8gtdm-MuiSvgIcon-root-MuiStepIcon-root" focusable="false" viewBox="0 0 24 24" > <circle cx="12" cy="12" r="12" /> <text class="MuiStepIcon-text css-1g86afo-MuiStepIcon-text" dominant-baseline="central"
src/test/MemberDirectory.test.tsx > MemberDirectory – copy address > calls clipboard.writeText on copy click: frontend/src/test/MemberDirectory.test.tsx#L317
TypeError: Cannot set property clipboard of #<Navigator> which has only a getter ❯ src/test/MemberDirectory.test.tsx:317:12
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/