1 |
commit: a454bc9baa8794a3aaa4e86f0bc30473cf9982da |
2 |
Author: Patrice Clement <monsieurp <AT> gentoo <DOT> org> |
3 |
AuthorDate: Thu Aug 27 10:22:58 2015 +0000 |
4 |
Commit: Patrice Clement <monsieurp <AT> gentoo <DOT> org> |
5 |
CommitDate: Thu Aug 27 10:24:25 2015 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a454bc9b |
7 |
|
8 |
dev-java/jdom: rework src_test function and the whole tests handling reasoning. |
9 |
|
10 |
Package-Manager: portage-2.2.18 |
11 |
Signed-off-by: Patrice Clement <monsieurp <AT> gentoo.org> |
12 |
|
13 |
dev-java/jdom/jdom-2.0.6-r3.ebuild | 118 +++++++++++++++++++++++++++++++++++++ |
14 |
1 file changed, 118 insertions(+) |
15 |
|
16 |
diff --git a/dev-java/jdom/jdom-2.0.6-r3.ebuild b/dev-java/jdom/jdom-2.0.6-r3.ebuild |
17 |
new file mode 100644 |
18 |
index 0000000..be6ed0e |
19 |
--- /dev/null |
20 |
+++ b/dev-java/jdom/jdom-2.0.6-r3.ebuild |
21 |
@@ -0,0 +1,118 @@ |
22 |
+# Copyright 1999-2015 Gentoo Foundation |
23 |
+# Distributed under the terms of the GNU General Public License v2 |
24 |
+# $Id$ |
25 |
+ |
26 |
+EAPI=5 |
27 |
+JAVA_PKG_IUSE="source test doc" |
28 |
+ |
29 |
+inherit java-pkg-2 java-pkg-simple |
30 |
+ |
31 |
+DESCRIPTION="Java API to manipulate XML data" |
32 |
+SRC_URI="http://www.jdom.org/dist/binary/${P}.zip" |
33 |
+HOMEPAGE="http://www.jdom.org" |
34 |
+LICENSE="JDOM" |
35 |
+SLOT="2" |
36 |
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86" |
37 |
+ |
38 |
+CDEPEND=" |
39 |
+ test? ( |
40 |
+ dev-java/junit:4 |
41 |
+ ) |
42 |
+ dev-java/xalan:0 |
43 |
+ dev-java/jaxen:1.1 |
44 |
+ dev-java/iso-relax:0 |
45 |
+ dev-java/xml-commons-external:1.4" |
46 |
+RDEPEND=">=virtual/jre-1.6 |
47 |
+ ${CDEPEND}" |
48 |
+DEPEND=">=virtual/jdk-1.6 |
49 |
+ app-arch/unzip |
50 |
+ ${CDEPEND}" |
51 |
+IUSE="" |
52 |
+ |
53 |
+S="${WORKDIR}" |
54 |
+ |
55 |
+JAVA_GENTOO_CLASSPATH="xalan,jaxen-1.1,iso-relax,xml-commons-external-1.4" |
56 |
+JAVA_SRC_DIR="org" |
57 |
+ |
58 |
+# Dubious tests: |
59 |
+# They either do not pass or don't have runnable methods (i.e. tests) |
60 |
+UNIT_TESTS=( |
61 |
+ org/jdom2/test/cases/input/sax/TestXMLReaderSAX2Factory.java |
62 |
+ org/jdom2/test/cases/input/sax/TestXMLReaderSingletons.java |
63 |
+ org/jdom2/test/cases/input/sax/TestXMLReaderXSDFactory.java |
64 |
+ org/jdom2/test/cases/input/sax/TestXMLReaderJAXPFactory.java |
65 |
+ org/jdom2/test/cases/input/sax/TestXMLReaderSchemaFactory.java |
66 |
+ org/jdom2/test/cases/input/TestSAXComplexSchema.java |
67 |
+ org/jdom2/test/cases/input/TestSAXBuilder.java |
68 |
+ org/jdom2/test/cases/input/TestSAXHandler.java |
69 |
+ org/jdom2/test/cases/input/TestDOMBuilder.java |
70 |
+ org/jdom2/test/cases/input/TestDTDParser.java |
71 |
+ org/jdom2/test/cases/input/TestJDOMParseExceptn.java |
72 |
+ org/jdom2/test/cases/input/TestStAXEventBuilder.java |
73 |
+ org/jdom2/test/cases/input/TestBuilderErrorHandler.java |
74 |
+ org/jdom2/test/cases/input/TestStAXStreamBuilder.java |
75 |
+ org/jdom2/test/cases/input/HelpTestDOMBuilder.java |
76 |
+ org/jdom2/test/cases/special/TestIssue008ExpandEntity.java |
77 |
+ org/jdom2/test/cases/located/TestLocatedJDOMFactory.java |
78 |
+ org/jdom2/test/cases/xpath/TestJaxenXPathHelper.java |
79 |
+ org/jdom2/test/cases/xpath/TestDefaultXPathHelper.java |
80 |
+) |
81 |
+ |
82 |
+src_unpack() { |
83 |
+ default |
84 |
+ cd "${S}" |
85 |
+ unpack ./"${P}-sources".jar |
86 |
+} |
87 |
+ |
88 |
+java_prepare() { |
89 |
+ find "${S}"/lib -type f -delete || die |
90 |
+ if use test; then |
91 |
+ JAVA_GENTOO_CLASSPATH+=",junit-4" |
92 |
+ else |
93 |
+ # Override the array with different files. |
94 |
+ UNIT_TESTS=( |
95 |
+ org/jdom2/test |
96 |
+ org/jdom2/Test*.java |
97 |
+ org/jdom2/contrib/android/TranslateTests.java |
98 |
+ org/jdom2/input/sax/TestTextBuffer.java |
99 |
+ ) |
100 |
+ fi |
101 |
+ |
102 |
+ rm -rf "${UNIT_TESTS[@]}" || die |
103 |
+} |
104 |
+ |
105 |
+src_compile() { |
106 |
+ java-pkg-simple_src_compile |
107 |
+} |
108 |
+ |
109 |
+src_install() { |
110 |
+ java-pkg-simple_src_install |
111 |
+ use source && java-pkg_dosrc org |
112 |
+} |
113 |
+ |
114 |
+src_test() { |
115 |
+ local DIR="org/jdom2/test" |
116 |
+ local CP="${DIR}:${PN}.jar:$(java-pkg_getjars junit-4,${JAVA_GENTOO_CLASSPATH})" |
117 |
+ local TESTS=() |
118 |
+ |
119 |
+ while read -d $'\0' -r file; do |
120 |
+ basefile=$(basename ${file}) |
121 |
+ { |
122 |
+ # Skip if starts with Abstract |
123 |
+ [[ ${basefile} =~ ^Abstract ]] || \ |
124 |
+ # Skip if doesn't starts with Test |
125 |
+ [[ ! ${basefile} =~ ^Test ]] || \ |
126 |
+ # Skip if doesn't end with the .java extension |
127 |
+ [[ ! ${basefile} =~ \.java$ ]] |
128 |
+ } && continue |
129 |
+ TESTS+=(${file}) |
130 |
+ done < <(find "${DIR}" -type f -print0) |
131 |
+ |
132 |
+ # Turn ${TESTS[@}} array into a string |
133 |
+ TESTS="${TESTS[@]}" |
134 |
+ TESTS="${TESTS//src\/test\/java\/}" |
135 |
+ TESTS="${TESTS//.java}" |
136 |
+ TESTS="${TESTS//\//.}" |
137 |
+ |
138 |
+ ejunit4 -classpath "${CP}" ${TESTS} |
139 |
+} |