java-pkg-simple.eclass: improve test selection for multi-jar packages

Testing multi-jar packages was not properly supported.
With this change the tests_to_run are selected per module.

Signed-off-by: Volkmar W. Pogatzki <gentoo@pogatzki.net>
Closes: https://github.com/gentoo/gentoo/pull/27491
Signed-off-by: Miroslav Šulc <fordfrog@gentoo.org>
This commit is contained in:
Volkmar W. Pogatzki 2022-09-27 12:40:42 +02:00 committed by Miroslav Šulc
parent f01a3fc470
commit 3eb0cfe339
No known key found for this signature in database
GPG Key ID: 65D0F770B26B469C
1 changed files with 15 additions and 13 deletions

View File

@ -545,19 +545,21 @@ java-pkg-simple_src_test() {
if [[ -n ${JAVA_TEST_RUN_ONLY} ]]; then
tests_to_run="${JAVA_TEST_RUN_ONLY[@]}"
else
tests_to_run=$(find "${classes}" -type f\
\( -name "*Test.class"\
-o -name "Test*.class"\
-o -name "*Tests.class"\
-o -name "*TestCase.class" \)\
! -name "*Abstract*"\
! -name "*BaseTest*"\
! -name "*TestTypes*"\
! -name "*TestUtils*"\
! -name "*\$*")
tests_to_run=${tests_to_run//"${classes}"\/}
tests_to_run=${tests_to_run//.class}
tests_to_run=${tests_to_run//\//.}
pushd "${JAVA_TEST_SRC_DIR}" > /dev/null || die
tests_to_run=$(find * -type f\
\( -name "*Test.java"\
-o -name "Test*.java"\
-o -name "*Tests.java"\
-o -name "*TestCase.java" \)\
! -name "*Abstract*"\
! -name "*BaseTest*"\
! -name "*TestTypes*"\
! -name "*TestUtils*"\
! -name "*\$*")
tests_to_run=${tests_to_run//"${classes}"\/}
tests_to_run=${tests_to_run//.java}
tests_to_run=${tests_to_run//\//.}
popd > /dev/null || die
# exclude extra test classes, usually corner cases
# that the code above cannot handle