blob: f17d5cfacb8777dd3576b51eff0e73bc90515f1b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
|
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
JAVA_PKG_IUSE="doc source test"
JAVA_TESTING_FRAMEWORKS="junit-4"
MAVEN_ID="xom:xom:${PV}"
inherit java-pkg-2 java-pkg-simple
DESCRIPTION="XML Object Model"
HOMEPAGE="https://xom.nu"
SRC_URI="https://github.com/elharo/${PN}/releases/download/v${PV}/${P}-src.tar.gz"
LICENSE="LGPL-2"
SLOT="0"
KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
# Bug #905215
PROPERTIES="test_network"
RESTRICT="test"
CP_DEPEND="
dev-java/jaxen:1.2
dev-java/xerces:2"
RDEPEND="
${CP_DEPEND}
>=virtual/jre-1.8:*"
DEPEND="
${CP_DEPEND}
dev-java/junit:0
>=virtual/jdk-1.8:*"
PATCHES=( "${FILESDIR}/xom-1.3.7-disable-invalid-test.patch" )
JAVA_AUTOMATIC_MODULE_NAME="nu.xom"
JAVA_MAIN_CLASS="nu.xom.Info"
JAVA_RESOURCE_DIRS="src/main/resources"
JAVA_SRC_DIR="src/main/java"
JAVA_TEST_GENTOO_CLASSPATH="junit-4"
JAVA_TEST_SRC_DIR="src/test/java"
src_prepare() {
java-pkg-2_src_prepare
java-pkg_clean
default
# removing directories based on build.xml
rm -rv XOM/src/nu/xom/benchmarks/ || die
rm -rv XOM/src/nu/xom/integrationtests/ || die
rm -rv XOM/src/nu/xom/samples/ || die
rm -rv XOM/src/nu/xom/tools/ || die
# reorganize the code and resources so that it goes well with java-pkg-simple
mkdir -pv ${JAVA_SRC_DIR} ${JAVA_RESOURCE_DIRS} ${JAVA_TEST_SRC_DIR}/nu/xom || die
mv -v {XOM/src,${JAVA_TEST_SRC_DIR}}/nu/xom/tests || die
mv -v XOM/data . || die
pushd XOM/src || die
for file in $(find -type f -name "*.java"); do
cp --parents -R ${file} "${WORKDIR}/${JAVA_SRC_DIR}" || die
done
for file in $(find -type f ! -name "*.java"); do
cp --parents -R ${file} "${WORKDIR}/${JAVA_RESOURCE_DIRS}" || die
done
popd
}
src_test() {
# These tests need to run separately, otherwise fail
# Should pass with "OK (126 tests)"
JAVA_TEST_RUN_ONLY=(
nu.xom.tests.AttributesTest
nu.xom.tests.DocumentTest
nu.xom.tests.ElementTest
nu.xom.tests.NodesTest
nu.xom.tests.ParentNodeTest
)
java-pkg-simple_src_test
JAVA_TEST_RUN_ONLY=()
pushd src/test/java > /dev/null || die
# Exclude EBCDICTest.java
# https://github.com/elharo/xom/blob/v1.3.8/src/nu/xom/tests/EBCDICTest.java#L71-L73
# And exclude those tests already run before
local JAVA_TEST_RUN_ONLY=$(find * \
-type f \
-name "*Test.java" \
! -name 'EBCDICTest.java' \
! -name 'AttributesTest.java' \
! -name 'DocumentTest.java' \
! -name 'ElementTest.java' \
! -name 'NodesTest.java' \
! -name 'ParentNodeTest.java' \
)
JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//.java}"
JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//\//.}"
popd > /dev/null || die
java-pkg-simple_src_test
}
|