name: Theme Tests on: push: branches: [master, main] paths: - '.github/workflows/theme-tests.yml' - 'meson.build' - 'meson_options.txt' - 'src/common/**' - 'src/fe-gtk/meson.build' - 'src/fe-gtk/theme/**' pull_request: branches: [master, main] paths: - '.github/workflows/theme-tests.yml' - 'meson.build' - 'meson_options.txt' - 'src/common/**' - 'src/fe-gtk/meson.build' - 'src/fe-gtk/theme/**' workflow_dispatch: permissions: contents: read jobs: theme_tests: runs-on: ubuntu-22.04 steps: - uses: actions/checkout@v5 with: submodules: true - name: Install dependencies run: | set -eux sudo apt-get update sudo apt-get install -y --no-install-recommends \ build-essential \ meson \ ninja-build \ pkg-config \ gettext \ libgtk-3-dev \ libglib2.0-dev \ libdbus-glib-1-dev \ libcanberra-dev \ libarchive-dev \ libssl-dev \ xvfb - name: Configure run: | set -eux meson setup build-theme-tests \ -Dauto_features=disabled \ -Dplugin=false \ -Dtext-frontend=true - name: Run theme tests run: | set -eux xvfb-run -a meson test -C build-theme-tests --print-errorlogs \ --timeout-multiplier 2 \ 'Theme Manager/Policy Tests' \ 'Theme Manager Dispatch Routing Tests' \ 'Theme Manager Auto Refresh Tests' \ 'Theme Application Input Style Tests' \ 'Theme Runtime Persistence Tests' \ 'Theme Access Routing Tests' \ 'Theme GTK3 Settings Tests' \ 'Theme Preferences GTK3 Populate Tests'