1
0
Fork 0

drm_hwcomposer: CI: run CtsGraphicsTestCases

Add a job to run a subset of relevant tests from CtsGraphicsTestCases on
newly built drm-hwcomposer.

Signed-off-by: Deborah Brouwer <deborah.brouwer@collabora.com>
This commit is contained in:
Deborah Brouwer 2025-04-09 13:53:59 -07:00
parent 9cd6b239ff
commit 399f97fb89
3 changed files with 68 additions and 0 deletions

View file

@ -0,0 +1,14 @@
x86_64 CtsGraphicsTestCases android.graphics.cts.ANativeWindowTest
x86_64 CtsGraphicsTestCases android.graphics.cts.ASurfaceTextureTest
x86_64 CtsGraphicsTestCases android.graphics.cts.HardwareRendererTest
x86_64 CtsGraphicsTestCases android.graphics.cts.EGL14Test
x86_64 CtsGraphicsTestCases android.graphics.cts.EGL15Test
x86_64 CtsGraphicsTestCases android.graphics.cts.FrameRateOverrideTest
x86_64 CtsGraphicsTestCases android.graphics.cts.SetFrameRateTest
x86_64 CtsGraphicsTestCases android.graphics.cts.MatchContentFrameRateTest
x86_64 CtsGraphicsTestCases android.graphics.cts.VulkanFeaturesTest0
x86_64 CtsGraphicsTestCases android.graphics.cts.VulkanPreTransformTest
x86_64 CtsGraphicsTestCases android.graphics.cts.BasicVulkanGpuTest0
x86_64 CtsGraphicsTestCases android.graphics.cts.PixelFormatTest
x86_64 CtsGraphicsTestCases android.graphics.cts.BitmapColorSpaceTest
x86_64 CtsGraphicsTestCases android.graphics.cts.ColorSpaceTest

31
.ci/android/cts-runner.sh Executable file
View file

@ -0,0 +1,31 @@
#!/usr/bin/env bash
# shellcheck disable=SC1091 # no need to follow references to other shell scripts
set -e
EXIT_CODE=1
if [[ -z ${CI_PROJECT_DIR} ]]; then
CI_PROJECT_DIR="$(dirname "${0}")/../.."
fi
source "${CI_PROJECT_DIR}/.ci/android/launch-cvd.sh"
section_start run_android_cts "run_android_cts"
set -x
INCLUDE_FILE="${CI_PROJECT_DIR}/.ci/android/cts-includes.txt"
# shellcheck disable=SC2086 # keep word splitting
INCLUDE_FILTERS="$(grep -v -E "(^#|^[[:space:]]*$)" "$INCLUDE_FILE" | sed -e 's/\s*$//g' -e 's/.*/--include-filter "\0" /g')"
# shellcheck disable=SC2086 # keep word splitting
eval /android-tools/android-cts/tools/cts-tradefed run commandAndExit cts-dev \
$INCLUDE_FILTERS --log-level-display ASSERT
# Even if there are failed tests, eval will exit with 0, so check for failures manually.
[ "$(grep "^FAILED" /android-tools/android-cts/results/latest/invocation_summary.txt | tr -d ' ' | cut -d ':' -f 2)" = "0" ]
export EXIT_CODE=$?
section_end run_android_cts
cp -r "/android-tools/android-cts/results/latest"/* "${RESULTS_DIR}"
cp -r "/android-tools/android-cts/logs/latest"/* "${RESULTS_DIR}"

View file

@ -24,6 +24,7 @@ stages:
- build
- tidy
- style
- android
build_arm64:
stage: build
@ -65,3 +66,25 @@ checkstyle:
untracked: true
tags:
- placeholder-job
android-cts:
stage: android
extends:
.use-ubuntu/x86_64_android
variables:
RESULTS_DIR: "${CI_PROJECT_DIR}/results"
script:
- "${CI_PROJECT_DIR}/.ci/android/cts-runner.sh"
needs:
- job: build_x86_64
artifacts: true
- job: ubuntu/x86_64_android
- job: use-debian/x86_64_cuttlefish
artifacts: true
artifacts:
paths:
- "${RESULTS_DIR}"
when: always
expire_in: 1 week
tags:
- kvm