#!/usr/bin/env bash # SPDX-License-Identifier: MIT # Requires the Fedora build dependencies for all seven tools; never installs them. set -euo pipefail repo_root=$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")/.." && pwd) build_dir=${FEDORA_TOOLS_TEST_BUILD_DIR:-"$repo_root/local/test-build"} cd -- "$repo_root" for script in scripts/*; do if [[ -f $script ]]; then bash -n "$script"; fi done bash scripts/tests/test-source-archives plugin=touchpad-hold-tap/90-touchpad-hold-tap.lua lua touchpad-hold-tap/tests/test-touchpad-hold-tap.lua "$plugin" lua touchpad-hold-tap/tests/test-touchpad-hold-tap.lua "$plugin" KEY_F13 lua touchpad-hold-tap/tests/test-touchpad-hold-tap.lua "$plugin" BTN_MIDDLE allow-moving-anchor bash touchpad-hold-tap/tests/test-touchpad-hold-tap-config "$plugin" touchpad-hold-tap/touchpad-hold-tap-config bash plasma-always-show-unlock/tests/test-plasma-always-show-unlock \ plasma-always-show-unlock/plasma-always-show-unlock \ plasma-always-show-unlock/LockScreenUi.patch plasma-always-show-unlock/tests/LockScreenUi.qml QT_QPA_PLATFORM=offscreen QT_QUICK_BACKEND=software \ qmltestrunner-qt6 -input plasma-always-show-unlock/tests bash plasma-fingerprint-workaround/tests/test-controller \ plasma-fingerprint-workaround/plasma-fingerprint-workaround plasma-fingerprint-workaround/payload.conf for tool in plasma-task-group-shortcuts plasma-panel-actions fedora-tools-settings framework-laptop-tools; do cmake -S "$tool" -B "$build_dir/$tool" -DBUILD_TESTING=ON -DCMAKE_BUILD_TYPE=RelWithDebInfo cmake --build "$build_dir/$tool" --parallel "${CMAKE_BUILD_PARALLEL_LEVEL:-2}" QT_QPA_PLATFORM=offscreen QT_QUICK_BACKEND=software \ ctest --test-dir "$build_dir/$tool" --output-on-failure done