Skip to content

test(itest): dynamic port, non-error GraphQL responses, websocket notification leaks#1691

Open
andrewazores wants to merge 24 commits into
cryostatio:mainfrom
andrewazores:graphql-test-assert
Open

test(itest): dynamic port, non-error GraphQL responses, websocket notification leaks#1691
andrewazores wants to merge 24 commits into
cryostatio:mainfrom
andrewazores:graphql-test-assert

Conversation

@andrewazores

@andrewazores andrewazores commented Jul 9, 2026

Copy link
Copy Markdown
Member

Welcome to Cryostat! 👋

Before contributing, make sure you have:

  • Read the contributing guidelines
  • Linked a relevant issue which this PR resolves
  • Linked any other relevant issues, PR's, or documentation, if any
  • Resolved all conflicts, if any
  • Rebased your branch PR on top of the latest upstream main branch
  • Attached at least one of the following labels to the PR: [chore, ci, docs, feat, fix, test]
  • Signed all commits using a GPG signature

To recreate commits with GPG signature git fetch upstream && git rebase --force --gpg-sign upstream/main


Depends on #1689
Based on #1689

Description of the change:

Various fixes trying to get itest suite into better state.

  1. Set quarkus.http.test-port=0 so that Quarkus chooses a random available port for the Cryostat HTTP port, rather than hardcoding to 8081. This didn't end up helping as intended, but it seems worth keeping.
  2. Shut down the WORKER executor threadpool in WebSocketTestBase to ensure async tasks from a test run don't continue running during the next test run.
  3. Add a timeout 1h to PR CI runs so hanging runs should terminate sooner.
  4. Split out AgentHeapDumpGraphQLIT from AgentHeapDumpIT, like test(async-profiler): split GraphQL integration tests into separate file #1689
  5. Add missing audit tracking entities for thread dumps and heap dumps to GraphQL mutation implementations
  6. Add test assertions for GraphQL responses - if a GraphQL query or mutation fails, the HTTP response status code is still 200, but the JSON GraphQL body will indicate an error. These were not previously checked in depth, so GraphQL failures would not be caught immediately and could lead to strange-looking cascaded failures later in tests.

I find that this works better and gets the test suite passing on my development workstation, but there are still issues on my laptop and in CI.

@andrewazores

Copy link
Copy Markdown
Member Author

/build_test

@github-actions

github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown

Workflow started at 7/9/2026, 11:38:07 AM. View Actions Run.

@andrewazores

Copy link
Copy Markdown
Member Author

/build_test

@github-actions

github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown

Workflow started at 7/9/2026, 12:26:52 PM. View Actions Run.

@github-actions

github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown

CI build:
Unit tests pass with flaky tests ⚠️
Tests run: 615, Failures: 0, Errors: 0, Skipped: 1, Flakes: 2

Flaky tests:

@andrewazores

Copy link
Copy Markdown
Member Author

/build_test

@github-actions

github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown

Workflow started at 7/9/2026, 2:44:37 PM. View Actions Run.

@github-actions

github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown

CI build:
Unit tests pass ✅
Tests run: 615, Failures: 0, Errors: 0, Skipped: 1
https://github.com/cryostatio/cryostat/actions/runs/29041767591

@andrewazores

Copy link
Copy Markdown
Member Author

/build_test

@github-actions

github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown

Workflow started at 7/9/2026, 3:45:28 PM. View Actions Run.

@github-actions

github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown

CI build:
Unit tests pass ✅
Tests run: 615, Failures: 0, Errors: 0, Skipped: 1
https://github.com/cryostatio/cryostat/actions/runs/29045462548

@andrewazores

Copy link
Copy Markdown
Member Author

/build_test

@github-actions

Copy link
Copy Markdown

Workflow started at 7/10/2026, 11:32:20 AM. View Actions Run.

@andrewazores andrewazores changed the title test: assert non-error GraphQL responses, ensure notifications are not leaked test: non-error GraphQL responses, websocket notification leaks, await clean shutdown Jul 10, 2026
@andrewazores andrewazores changed the title test: non-error GraphQL responses, websocket notification leaks, await clean shutdown test(itest): dynamic URL, non-error GraphQL responses, websocket notification leaks, await clean shutdown Jul 10, 2026
@andrewazores

Copy link
Copy Markdown
Member Author

/build_test

@github-actions

Copy link
Copy Markdown

Workflow started at 7/10/2026, 12:29:46 PM. View Actions Run.

@github-actions

Copy link
Copy Markdown

This PR/issue depends on:

@github-actions

Copy link
Copy Markdown

CI build:
Unit tests pass ✅
Tests run: 615, Failures: 0, Errors: 0, Skipped: 1
https://github.com/cryostatio/cryostat/actions/runs/29107570502

@andrewazores andrewazores force-pushed the graphql-test-assert branch from f27189e to 55b2f76 Compare July 10, 2026 18:30
@andrewazores

Copy link
Copy Markdown
Member Author

/build_test

@github-actions

Copy link
Copy Markdown

Workflow started at 7/10/2026, 3:01:31 PM. View Actions Run.

@github-actions

Copy link
Copy Markdown

CI build:
Unit tests pass ✅
Tests run: 615, Failures: 0, Errors: 0, Skipped: 1
https://github.com/cryostatio/cryostat/actions/runs/29116585953

@andrewazores andrewazores changed the title test(itest): dynamic URL, non-error GraphQL responses, websocket notification leaks, await clean shutdown test(itest): dynamic port, non-error GraphQL responses, websocket notification leaks Jul 10, 2026
@andrewazores andrewazores marked this pull request as ready for review July 10, 2026 20:01
@andrewazores andrewazores requested a review from a team July 10, 2026 20:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant