Skip to content

Add tests and CI - #10

Merged
mthielma merged 2 commits into
mainfrom
add-tests-and-ci
Sep 25, 2026
Merged

mthielma merged 2 commits into
mainfrom
add-tests-and-ci

Conversation

@boriskaus

@boriskaus boriskaus commented Sep 25, 2026 •

Copy link
Copy Markdown
Member

What's in it

  • Tests (test/):
    • build a small synthetic vertical profile with GeophysicalModelGenerator (tomography, topography, Moho, seismicity)
    • drive the GUI through its menus like a user would: Load Profile, switch field and colormap, add picks, Save Picks (checks x/depth/lat/lon, user name and profile info in the jld2 file), Load Picks, Load Picks (not modifyable), Save Screenshot
  • CI (.github/workflows/CI.yml): Julia 1.10 (LTS), 1.11, 1.12 and the latest release on Ubuntu, macOS and Windows.
    • Linux runs a virtual display (xvfb), and the GUI tests must pass there.
    • On Windows, a software OpenGL driver (Mesa) is installed, and the full GUI tests run there too.
    • The macOS runners have no OpenGL at all. There, GLMakie's precompile workload is turned off and the GUI tests are skipped, so macOS only checks that the package installs and loads.
    • ADA_GUI_TESTS=true/false/auto controls this locally too.

Changes to src

  • The native file dialogs are now called through PICK_FILE[] / SAVE_FILE[] Refs so that the tests can replace them. Nothing changes for users.
  • Bug fix: Save Picks... overwrote the global picks Observable with a NamedTuple. After one save, you could no longer add, drag or load picks without restarting the GUI. The tests caught this.

🤖 Generated with Claude Code

boriskaus and others added 2 commits September 25, 2026 09:38
- test suite that builds a synthetic GMG profile and drives the GUI through its
  menus (load profile, change field/colormap, save/load picks, screenshot)
- the native file dialogs are called through PICK_FILE/SAVE_FILE Refs so that
  the tests can replace them
- CI on Linux, macOS and Windows for Julia 1.10, 1.11, 1.12 and the latest release
- fix: saving picks overwrote the global `picks` Observable, which broke
  picking and loading picks afterwards

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…lation on macOS

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@mthielma
mthielma marked this pull request as ready for review September 25, 2026 08:28
@mthielma
mthielma merged commit 6475bf8 into main Sep 25, 2026
12 checks passed
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.

2 participants