feat(backend): add unit tests for auth middleware and endpoints #369 #211
ci.yml
on: pull_request
Frontend CI
47s
Backend CI
1m 5s
Soroban Contracts CI
44s
Annotations
13 errors and 4 warnings
|
Frontend CI
Process completed with exit code 1.
|
|
src/__tests__/components.test.tsx > CancelConfirmModal > shows remaining = deposited - withdrawn:
frontend/src/__tests__/components.test.tsx#L126
TestingLibraryElementError: Found multiple elements with the text: /800/
Here are the matching elements:
Ignored nodes: comments, script, style
<span
class="font-semibold text-accent"
>
800
USDC
</span>
Ignored nodes: comments, script, style
<div
class="mb-6 p-3 rounded-lg bg-red-500/10 border border-red-500/20 text-sm text-red-300"
>
<strong
class="text-red-400"
>
What happens:
</strong>
The stream stops immediately. The recipient keeps any already-withdrawn funds. Remaining funds (
800
USDC
) stay locked in the contract until the recipient withdraws or the admin resolves them.
</div>
(If this is intentional, then use the `*AllBy*` variant of the query (like `queryAllByText`, `getAllByText`, or `findAllByText`)).
Ignored nodes: comments, script, style
<body>
<div>
<div
class="fixed inset-0 z-50 flex items-center justify-center bg-black/50 backdrop-blur-sm"
>
<div
class="glass-card relative w-full max-w-md mx-4 rounded-2xl border border-red-500/30 p-8"
>
<div
class="flex items-start gap-4 mb-6"
>
<div
class="shrink-0 flex h-10 w-10 items-center justify-center rounded-full bg-red-500/15"
>
<svg
class="w-5 h-5 text-red-400"
fill="none"
stroke="currentColor"
viewBox="0 0 24 24"
>
<path
d="M12 9v2m0 4h.01M10.29 3.86L1.82 18a2 2 0 001.71 3h16.94a2 2 0 001.71-3L13.71 3.86a2 2 0 00-3.42 0z"
stroke-linecap="round"
stroke-linejoin="round"
stroke-width="2"
/>
</svg>
</div>
<div>
<h2
class="text-xl font-bold"
>
Cancel Stream?
</h2>
<p
class="text-sm text-slate-400 mt-1"
>
This action is permanent and cannot be undone.
</p>
</div>
<button
aria-label="Close"
class="ml-auto text-slate-400 hover:text-foreground transition-colors disabled:opacity-50"
type="button"
>
<svg
class="w-5 h-5"
fill="none"
stroke="currentColor"
viewBox="0 0 24 24"
>
<path
d="M6 18L18 6M6 6l12 12"
stroke-linecap="round"
stroke-linejoin="round"
stroke-width="2"
/>
</svg>
</button>
</div>
<div
class="mb-6 rounded-lg bg-white/5 border border-glass-border divide-y divide-glass-border text-sm"
>
<div
class="flex justify-between px-4 py-3"
>
<span
class="text-slate-400"
>
Stream
</span>
<code
class="text-accent font-mono text-xs"
>
stream-42
</code>
</div>
<div
class="flex justify-between px-4 py-3"
>
<span
class="text-slate-400"
>
Recipient
</span>
<code
class="font-mono text-xs text-foreground"
>
GDEF456ABC789GHI012JKL345MNO678PQR901STU234VWX567YZA123BCD
</code>
</div>
<div
class="flex justify-between px-4 py-3"
>
<span
class="text-slate-400"
>
Already withdrawn
</span>
<span
class="font-semibold text-foreground"
>
200
USDC
</span>
</div>
<div
class="flex justify-between px-4 py-3"
>
<span
class="text-slate-400"
>
Remaining in stream
</span>
<span
class="font-semibold
|
|
src/__tests__/components.test.tsx > LiveCounter > resets to initial when isPaused switches to true:
frontend/src/__tests__/components.test.tsx#L49
TestingLibraryElementError: Unable to find an element with the text: 5. This could be because the text is broken up by multiple elements. In this case, you can provide a function for your text matcher to make your matcher more flexible.
Ignored nodes: comments, script, style
<body>
<div>
<div
style="display: flex; align-items: center; gap: 0.75rem;"
>
<span
style="position: relative; display: inline-flex; width: 0.75rem; height: 0.75rem;"
>
<span
style="position: absolute; border-radius: 999px; background: #ef4444; opacity: 0.5; animation: none;"
/>
<span
style="position: relative; display: inline-flex; width: 0.75rem; height: 0.75rem; border-radius: 999px; background: #ef4444;"
/>
</span>
<p
style="margin: 0px; font-size: 0.92rem; color: var(--text-muted);"
/>
</div>
</div>
</body>
❯ Object.getElementError ../node_modules/@testing-library/dom/dist/config.js:37:19
❯ ../node_modules/@testing-library/dom/dist/query-helpers.js:76:38
❯ ../node_modules/@testing-library/dom/dist/query-helpers.js:52:17
❯ ../node_modules/@testing-library/dom/dist/query-helpers.js:95:19
❯ src/__tests__/components.test.tsx:49:19
|
|
Backend CI
Duplicate function implementation.
|
|
Backend CI
Duplicate function implementation.
|
|
Backend CI
Property 'heartbeatTimer' does not exist on type 'SSEService'.
|
|
Backend CI
Property 'heartbeatTimer' does not exist on type 'SSEService'.
|
|
Backend CI
Property 'heartbeatTimer' does not exist on type 'SSEService'.
|
|
Backend CI
Property 'heartbeatTimer' does not exist on type 'SSEService'.
|
|
Backend CI
Property 'heartbeatTimer' does not exist on type 'SSEService'.
|
|
Backend CI
Duplicate function implementation.
|
|
Backend CI
Duplicate function implementation.
|
|
Backend CI
Property 'startHeartbeat' is private and only accessible within class 'SSEService'.
|
|
Frontend CI
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/
|
|
Frontend CI:
frontend/src/components/dashboard/dashboard-view.tsx#L6
'StreamListSkeleton' is defined but never used
|
|
Soroban Contracts CI
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/upload-artifact@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/
|
|
Backend CI
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/
|
Artifacts
Produced during runtime
| Name | Size | Digest | |
|---|---|---|---|
|
optimized-wasm
|
17.4 KB |
sha256:797a38b0cc1dfcc90a1d76896dadd96e29a2845a4cd6ba232ed042792ec8f497
|
|