Add Gnome Graphical Integration Test #14

Merged
MatthewCroughan merged 6 commits from mc/vm-test into main 2023-05-20 06:08:43 -04:00
MatthewCroughan commented 2023-05-11 11:09:20 -04:00 (Migrated from github.com)

This adds a graphical integration test to the Nix flake in this repo. I have updated the README.md and Flake inputs.

This VM integration test spawns Gnome, monado-service, stardust-xr-server, flatland and weston-cliptest and tests that the functionality works correctly. The result is a screenshot. If any program in the test produces an exit code above 0 it will fail the test, graphical rendering bugs should be visible in the resulting screenshot

The test can be built like nix build .#gnome-graphical-test

Interesting findings

In making this test, I found some regressions in the recent Stardust changes that effect clients, they can be reproduced like this:

An older version (d1e196fb67bdc1a31830333d9570c24b6d5f9e50) of Flatland broken with this version of the Server

nix build --override-input flatland "github:stardustxr/flatland/d1e196fb67bdc1a31830333d9570c24b6d5f9e50" .#gnome-graphical-test

image

A newer version of Flatland working with this version of the Server

nix build --override-input flatland "github:stardustxr/flatland/24613a496841bdf38e5f136608d5295860a75fce" .#gnome-graphical-test

image

This adds a graphical integration test to the Nix flake in this repo. I have updated the README.md and Flake inputs. This VM integration test spawns Gnome, `monado-service`, `stardust-xr-server`, `flatland` and `weston-cliptest` and tests that the functionality works correctly. The result is a screenshot. If any program in the test produces an exit code above 0 it will fail the test, graphical rendering bugs should be visible in the resulting screenshot The test can be built like `nix build .#gnome-graphical-test` # Interesting findings In making this test, I found some regressions in the recent Stardust changes that effect clients, they can be reproduced like this: ### An older version (`d1e196fb67bdc1a31830333d9570c24b6d5f9e50`) of Flatland broken with this version of the Server `nix build --override-input flatland "github:stardustxr/flatland/d1e196fb67bdc1a31830333d9570c24b6d5f9e50" .#gnome-graphical-test` ![image](https://github.com/StardustXR/server/assets/26458780/8a347511-71f9-4006-aa27-25d9025fe14e) ### A newer version of Flatland working with this version of the Server `nix build --override-input flatland "github:stardustxr/flatland/24613a496841bdf38e5f136608d5295860a75fce" .#gnome-graphical-test` ![image](https://github.com/StardustXR/server/assets/26458780/8964e10c-e823-4caa-b4bb-727f779f4452)
MatthewCroughan commented 2023-05-11 11:27:23 -04:00 (Migrated from github.com)

Github Action runners don't let you run VMs inside of the actions like this. I'm willing to donate the compute for Hercules CI and set it up.

Github Action runners don't let you run VMs inside of the actions like this. I'm willing to donate the compute for Hercules CI and set it up.
Sign in to join this conversation.