Skip to content

ci: run test:unit on merge gate, drop live-Testnet integration tests#40

Merged
AquiGorka merged 1 commit into
devfrom
ci/drop-live-testnet-from-merge-gate
Jul 8, 2026
Merged

ci: run test:unit on merge gate, drop live-Testnet integration tests#40
AquiGorka merged 1 commit into
devfrom
ci/drop-live-testnet-from-merge-gate

Conversation

@AquiGorka

Copy link
Copy Markdown
Contributor

What

Change the Test workflow's test step from deno task test to deno task test:unit, so the merge gate runs only the deterministic unit suite and no longer executes the live-Testnet *.integration.test.ts tests on push/PR.

Why

deno task test runs everything, including *.integration.test.ts against the live public Stellar Testnet. Those tests depend on real network ops (e.g. uploading contract WASM) that transiently fail — a flaky merge gate that validates the network, not the code. This produced red Test (push) runs on main (2026-06-17, 2026-06-23: CONTR_004: Failed to upload WASM to the network) while the same code passed on retried PR runs.

Scope

  • .github/workflows/test.yml: deno task testdeno task test:unit. Lint and coverage steps unchanged; test:unit produces the same coverage dir the coverage step consumes.
  • test:integration task retained in deno.json for on-demand/manual runs — not deleted or modified.
  • deno.json patch bump 0.6.1 → 0.6.2.

Verification (local, deno 2.9.0)

  • deno lint — clean (89 files).
  • deno task test:unit13 passed (151 steps) | 0 failed (1s); zero integration tests executed.
  • Coverage step generates coverage.lcov from the test:unit coverage dir.

The Test workflow ran 'deno task test' on push/PR, executing the live
public Stellar Testnet '*.integration.test.ts' suite. Those tests depend
on real network ops (contract WASM upload) that transiently fail,
validating the network rather than the code. Point the gate at
'deno task test:unit' (deterministic, no integration). The
'test:integration' task is retained for on-demand runs.
@codecov

codecov Bot commented Jul 8, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@AquiGorka AquiGorka merged commit 9e77159 into dev Jul 8, 2026
2 checks passed
@AquiGorka AquiGorka deleted the ci/drop-live-testnet-from-merge-gate branch July 8, 2026 15:11
AquiGorka added a commit that referenced this pull request Jul 8, 2026
…(main) (#43)

## What

Change the Test workflow's test step from `deno task test` to `deno task
test:unit`, so the merge gate runs only the deterministic unit suite and
no longer executes the live-Testnet `*.integration.test.ts` tests on
push/PR.

This ports the effect of #40 (merged to `dev`) to `main`. `main` and
`dev` share the same relevant structure here: the gate runs `deno task
test` (everything, including integration), and `main`'s `deno.json`
already defines a `test:unit` task that ignores
`**/*.integration.test.ts`.

## Why

`deno task test` runs everything, including `*.integration.test.ts`
against the live public Stellar Testnet. Those tests depend on real
network ops (e.g. uploading contract WASM) that transiently fail — a
flaky merge gate that validates the network, not the code.

## Scope

- `.github/workflows/test.yml`: `deno task test` -> `deno task
test:unit`. Lint and coverage steps unchanged; `test:unit` produces the
same `coverage` dir the coverage step consumes.
- `test:integration` task **retained** in `deno.json` for
on-demand/manual runs — not deleted or modified.
- `deno.json` patch bump 0.11.1 -> 0.11.2.

## Verification (local, deno 2.9.0)

- `deno fmt --check` — clean (105 files).
- `deno lint` — clean (96 files).
- `deno task test:unit` — `17 passed (199 steps) | 0 failed`; zero
integration tests executed.
- Coverage step generates `coverage.lcov` from the `test:unit` coverage
dir.
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