You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@ant.apache.org by bo...@apache.org on 2015/04/18 22:26:50 UTC
[20/22] ant git commit: fix some lineends
http://git-wip-us.apache.org/repos/asf/ant/blob/1ae68097/src/tests/junit/org/apache/tools/ant/taskdefs/optional/XsltTest.java
----------------------------------------------------------------------
diff --git a/src/tests/junit/org/apache/tools/ant/taskdefs/optional/XsltTest.java b/src/tests/junit/org/apache/tools/ant/taskdefs/optional/XsltTest.java
index a5b71de..594dada 100644
--- a/src/tests/junit/org/apache/tools/ant/taskdefs/optional/XsltTest.java
+++ b/src/tests/junit/org/apache/tools/ant/taskdefs/optional/XsltTest.java
@@ -1,86 +1,86 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-package org.apache.tools.ant.taskdefs.optional;
-
-import org.apache.tools.ant.BuildException;
-import org.apache.tools.ant.BuildFileRule;
-import org.junit.Before;
-import org.junit.Rule;
-import org.junit.Test;
-
-import static org.junit.Assert.fail;
-
-/**
- * Tests the {@link org.apache.tools.ant.taskdefs.XSLTProcess} task.
- * TODO merge with {@link org.apache.tools.ant.taskdefs.StyleTest}?
- * @since Ant 1.5
- */
-public class XsltTest {
-
- /**
- * where tasks run
- */
- private final static String TASKDEFS_DIR = "src/etc/testcases/taskdefs/optional/";
-
- @Rule
- public BuildFileRule buildRule = new BuildFileRule();
-
- @Before
- public void setUp() {
- buildRule.configureProject(TASKDEFS_DIR + "xslt.xml");
- }
-
-
- @Test
- public void testCatchNoDtd() {
- try {
- buildRule.executeTarget("testCatchNoDtd");
- fail("Expected failure");
- } catch(BuildException ex) {
- //TODO assert exception message
- }
- }
-
- @Test
- public void testCatalog() throws Exception {
- buildRule.executeTarget("testCatalog");
- }
-
- @Test
- public void testOutputProperty() throws Exception {
- buildRule.executeTarget("testOutputProperty");
- }
-
- @Test
- public void testXMLWithEntitiesInNonAsciiPath() throws Exception {
- buildRule.executeTarget("testXMLWithEntitiesInNonAsciiPath");
- }
-
- /**
- * check that the system id gets set properly on stylesheets.
- * @throws Exception if something goes wrong.
- */
- @Test
- public void testStyleSheetWithInclude() throws Exception {
- buildRule.executeTarget("testStyleSheetWithInclude");
- if (buildRule.getLog().indexOf("java.io.FileNotFoundException") != -1) {
- fail("xsl:include was not found");
- }
- }
-}
-
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+package org.apache.tools.ant.taskdefs.optional;
+
+import org.apache.tools.ant.BuildException;
+import org.apache.tools.ant.BuildFileRule;
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.Test;
+
+import static org.junit.Assert.fail;
+
+/**
+ * Tests the {@link org.apache.tools.ant.taskdefs.XSLTProcess} task.
+ * TODO merge with {@link org.apache.tools.ant.taskdefs.StyleTest}?
+ * @since Ant 1.5
+ */
+public class XsltTest {
+
+ /**
+ * where tasks run
+ */
+ private final static String TASKDEFS_DIR = "src/etc/testcases/taskdefs/optional/";
+
+ @Rule
+ public BuildFileRule buildRule = new BuildFileRule();
+
+ @Before
+ public void setUp() {
+ buildRule.configureProject(TASKDEFS_DIR + "xslt.xml");
+ }
+
+
+ @Test
+ public void testCatchNoDtd() {
+ try {
+ buildRule.executeTarget("testCatchNoDtd");
+ fail("Expected failure");
+ } catch(BuildException ex) {
+ //TODO assert exception message
+ }
+ }
+
+ @Test
+ public void testCatalog() throws Exception {
+ buildRule.executeTarget("testCatalog");
+ }
+
+ @Test
+ public void testOutputProperty() throws Exception {
+ buildRule.executeTarget("testOutputProperty");
+ }
+
+ @Test
+ public void testXMLWithEntitiesInNonAsciiPath() throws Exception {
+ buildRule.executeTarget("testXMLWithEntitiesInNonAsciiPath");
+ }
+
+ /**
+ * check that the system id gets set properly on stylesheets.
+ * @throws Exception if something goes wrong.
+ */
+ @Test
+ public void testStyleSheetWithInclude() throws Exception {
+ buildRule.executeTarget("testStyleSheetWithInclude");
+ if (buildRule.getLog().indexOf("java.io.FileNotFoundException") != -1) {
+ fail("xsl:include was not found");
+ }
+ }
+}
+
http://git-wip-us.apache.org/repos/asf/ant/blob/1ae68097/src/tests/junit/org/apache/tools/ant/taskdefs/optional/depend/DependTest.java
----------------------------------------------------------------------
diff --git a/src/tests/junit/org/apache/tools/ant/taskdefs/optional/depend/DependTest.java b/src/tests/junit/org/apache/tools/ant/taskdefs/optional/depend/DependTest.java
index 95c1eb0..01e0575 100644
--- a/src/tests/junit/org/apache/tools/ant/taskdefs/optional/depend/DependTest.java
+++ b/src/tests/junit/org/apache/tools/ant/taskdefs/optional/depend/DependTest.java
@@ -1,213 +1,213 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-package org.apache.tools.ant.taskdefs.optional.depend;
-
-import java.io.File;
-import java.util.Hashtable;
-
-import org.apache.tools.ant.BuildException;
-import org.apache.tools.ant.BuildFileRule;
-import org.apache.tools.ant.DirectoryScanner;
-import org.apache.tools.ant.FileUtilities;
-import org.apache.tools.ant.types.FileSet;
-import org.junit.Before;
-import org.junit.Rule;
-import org.junit.Test;
-
-import static org.apache.tools.ant.AntAssert.assertContains;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertTrue;
-import static org.junit.Assert.fail;
-
-/**
- * Testcase for the Depend optional task.
- *
- */
-public class DependTest {
- public static final String RESULT_FILESET = "result";
-
- public static final String TEST_BUILD_FILE
- = "src/etc/testcases/taskdefs/optional/depend/depend.xml";
-
- @Rule
- public BuildFileRule buildRule = new BuildFileRule();
-
- @Before
- public void setUp() {
- buildRule.configureProject(TEST_BUILD_FILE);
- }
-
- /**
- * Test direct dependency removal
- */
- @Test
- public void testDirect() {
- buildRule.executeTarget("src1setup");
- buildRule.executeTarget("compile");
-
- FileUtilities.rollbackTimetamps(new File(buildRule.getProject().getProperty("tempsrc.dir")), 5);
- FileUtilities.rollbackTimetamps(new File(buildRule.getProject().getProperty("classes.dir")), 5);
-
- buildRule.executeTarget("testdirect");
- Hashtable files = getResultFiles();
- assertEquals("Depend did not leave correct number of files", 3,
- files.size());
- assertTrue("Result did not contain A.class",
- files.containsKey("A.class"));
- assertTrue("Result did not contain D.class",
- files.containsKey("D.class"));
- }
-
- /**
- * Test dependency traversal (closure)
- */
- @Test
- public void testClosure() {
- buildRule.executeTarget("src1setup");
- buildRule.executeTarget("compile");
-
- FileUtilities.rollbackTimetamps(new File(buildRule.getProject().getProperty("tempsrc.dir")), 5);
- FileUtilities.rollbackTimetamps(new File(buildRule.getProject().getProperty("classes.dir")), 5);
-
- buildRule.executeTarget("testclosure");
- Hashtable files = getResultFiles();
- assertTrue("Depend did not leave correct number of files",
- files.size() <= 2);
- assertTrue("Result did not contain D.class",
- files.containsKey("D.class"));
- }
-
- /**
- * Test that inner class dependencies trigger deletion of the outer class
- */
- @Test
- public void testInner() {
- buildRule.executeTarget("src2setup");
- buildRule.executeTarget("compile");
-
- FileUtilities.rollbackTimetamps(new File(buildRule.getProject().getProperty("tempsrc.dir")), 5);
- FileUtilities.rollbackTimetamps(new File(buildRule.getProject().getProperty("classes.dir")), 5);
-
-
- buildRule.executeTarget("testinner");
- assertEquals("Depend did not leave correct number of files", 0,
- getResultFiles().size());
- }
-
- /**
- * Test that multi-leve inner class dependencies trigger deletion of
- * the outer class
- */
- @Test
- public void testInnerInner() {
- buildRule.executeTarget("src3setup");
- buildRule.executeTarget("compile");
-
- FileUtilities.rollbackTimetamps(new File(buildRule.getProject().getProperty("tempsrc.dir")), 5);
- FileUtilities.rollbackTimetamps(new File(buildRule.getProject().getProperty("classes.dir")), 5);
-
- buildRule.executeTarget("testinnerinner");
- assertEquals("Depend did not leave correct number of files", 0,
- getResultFiles().size());
- }
-
- /**
- * Test that an exception is thrown when there is no source
- */
- @Test
- public void testNoSource() {
- try {
- buildRule.executeTarget("testnosource");
- fail("Build exception expected: No source specified");
- } catch(BuildException ex) {
- assertContains("srcdir attribute must be set", ex.getMessage());
- }
- }
-
- /**
- * Test that an exception is thrown when the source attribute is empty
- */
- @Test
- public void testEmptySource() {
- try {
- buildRule.executeTarget("testemptysource");
- fail("Build exception expected: No source specified");
- } catch(BuildException ex) {
- assertContains("srcdir attribute must be non-empty", ex.getMessage());
- }
- }
-
- /**
- * Read the result fileset into a Hashtable
- *
- * @return a Hashtable containing the names of the files in the result
- * fileset
- */
- private Hashtable getResultFiles() {
- FileSet resultFileSet = (FileSet) buildRule.getProject().getReference(RESULT_FILESET);
- DirectoryScanner scanner = resultFileSet.getDirectoryScanner(buildRule.getProject());
- String[] scannedFiles = scanner.getIncludedFiles();
- Hashtable files = new Hashtable();
- for (int i = 0; i < scannedFiles.length; ++i) {
- files.put(scannedFiles[i], scannedFiles[i]);
- }
- return files;
- }
-
-
- /**
- * Test mutual dependency between inner and outer do not cause both to be
- * deleted
- */
- @Test
- public void testInnerClosure() {
- buildRule.executeTarget("testinnerclosure");
- assertEquals("Depend did not leave correct number of files", 4,
- getResultFiles().size());
- }
-
- /**
- * Test the operation of the cache
- */
- @Test
- public void testCache() {
- buildRule.executeTarget("testcache");
- }
-
- /**
- * Test the detection and warning of non public classes
- */
- @Test
- public void testNonPublic() {
- buildRule.executeTarget("src5setup");
- buildRule.executeTarget("compile");
-
- FileUtilities.rollbackTimetamps(new File(buildRule.getProject().getProperty("tempsrc.dir")), 5);
- FileUtilities.rollbackTimetamps(new File(buildRule.getProject().getProperty("classes.dir")), 5);
-
- buildRule.executeTarget("testnonpublic");
- String log = buildRule.getLog();
- assertContains("Expected warning about APrivate",
- "The class APrivate in file", log);
- assertContains("but has not been deleted because its source file "
- + "could not be determined",
- "The class APrivate in file", log);
- }
-
-}
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+package org.apache.tools.ant.taskdefs.optional.depend;
+
+import java.io.File;
+import java.util.Hashtable;
+
+import org.apache.tools.ant.BuildException;
+import org.apache.tools.ant.BuildFileRule;
+import org.apache.tools.ant.DirectoryScanner;
+import org.apache.tools.ant.FileUtilities;
+import org.apache.tools.ant.types.FileSet;
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.Test;
+
+import static org.apache.tools.ant.AntAssert.assertContains;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.fail;
+
+/**
+ * Testcase for the Depend optional task.
+ *
+ */
+public class DependTest {
+ public static final String RESULT_FILESET = "result";
+
+ public static final String TEST_BUILD_FILE
+ = "src/etc/testcases/taskdefs/optional/depend/depend.xml";
+
+ @Rule
+ public BuildFileRule buildRule = new BuildFileRule();
+
+ @Before
+ public void setUp() {
+ buildRule.configureProject(TEST_BUILD_FILE);
+ }
+
+ /**
+ * Test direct dependency removal
+ */
+ @Test
+ public void testDirect() {
+ buildRule.executeTarget("src1setup");
+ buildRule.executeTarget("compile");
+
+ FileUtilities.rollbackTimetamps(new File(buildRule.getProject().getProperty("tempsrc.dir")), 5);
+ FileUtilities.rollbackTimetamps(new File(buildRule.getProject().getProperty("classes.dir")), 5);
+
+ buildRule.executeTarget("testdirect");
+ Hashtable files = getResultFiles();
+ assertEquals("Depend did not leave correct number of files", 3,
+ files.size());
+ assertTrue("Result did not contain A.class",
+ files.containsKey("A.class"));
+ assertTrue("Result did not contain D.class",
+ files.containsKey("D.class"));
+ }
+
+ /**
+ * Test dependency traversal (closure)
+ */
+ @Test
+ public void testClosure() {
+ buildRule.executeTarget("src1setup");
+ buildRule.executeTarget("compile");
+
+ FileUtilities.rollbackTimetamps(new File(buildRule.getProject().getProperty("tempsrc.dir")), 5);
+ FileUtilities.rollbackTimetamps(new File(buildRule.getProject().getProperty("classes.dir")), 5);
+
+ buildRule.executeTarget("testclosure");
+ Hashtable files = getResultFiles();
+ assertTrue("Depend did not leave correct number of files",
+ files.size() <= 2);
+ assertTrue("Result did not contain D.class",
+ files.containsKey("D.class"));
+ }
+
+ /**
+ * Test that inner class dependencies trigger deletion of the outer class
+ */
+ @Test
+ public void testInner() {
+ buildRule.executeTarget("src2setup");
+ buildRule.executeTarget("compile");
+
+ FileUtilities.rollbackTimetamps(new File(buildRule.getProject().getProperty("tempsrc.dir")), 5);
+ FileUtilities.rollbackTimetamps(new File(buildRule.getProject().getProperty("classes.dir")), 5);
+
+
+ buildRule.executeTarget("testinner");
+ assertEquals("Depend did not leave correct number of files", 0,
+ getResultFiles().size());
+ }
+
+ /**
+ * Test that multi-leve inner class dependencies trigger deletion of
+ * the outer class
+ */
+ @Test
+ public void testInnerInner() {
+ buildRule.executeTarget("src3setup");
+ buildRule.executeTarget("compile");
+
+ FileUtilities.rollbackTimetamps(new File(buildRule.getProject().getProperty("tempsrc.dir")), 5);
+ FileUtilities.rollbackTimetamps(new File(buildRule.getProject().getProperty("classes.dir")), 5);
+
+ buildRule.executeTarget("testinnerinner");
+ assertEquals("Depend did not leave correct number of files", 0,
+ getResultFiles().size());
+ }
+
+ /**
+ * Test that an exception is thrown when there is no source
+ */
+ @Test
+ public void testNoSource() {
+ try {
+ buildRule.executeTarget("testnosource");
+ fail("Build exception expected: No source specified");
+ } catch(BuildException ex) {
+ assertContains("srcdir attribute must be set", ex.getMessage());
+ }
+ }
+
+ /**
+ * Test that an exception is thrown when the source attribute is empty
+ */
+ @Test
+ public void testEmptySource() {
+ try {
+ buildRule.executeTarget("testemptysource");
+ fail("Build exception expected: No source specified");
+ } catch(BuildException ex) {
+ assertContains("srcdir attribute must be non-empty", ex.getMessage());
+ }
+ }
+
+ /**
+ * Read the result fileset into a Hashtable
+ *
+ * @return a Hashtable containing the names of the files in the result
+ * fileset
+ */
+ private Hashtable getResultFiles() {
+ FileSet resultFileSet = (FileSet) buildRule.getProject().getReference(RESULT_FILESET);
+ DirectoryScanner scanner = resultFileSet.getDirectoryScanner(buildRule.getProject());
+ String[] scannedFiles = scanner.getIncludedFiles();
+ Hashtable files = new Hashtable();
+ for (int i = 0; i < scannedFiles.length; ++i) {
+ files.put(scannedFiles[i], scannedFiles[i]);
+ }
+ return files;
+ }
+
+
+ /**
+ * Test mutual dependency between inner and outer do not cause both to be
+ * deleted
+ */
+ @Test
+ public void testInnerClosure() {
+ buildRule.executeTarget("testinnerclosure");
+ assertEquals("Depend did not leave correct number of files", 4,
+ getResultFiles().size());
+ }
+
+ /**
+ * Test the operation of the cache
+ */
+ @Test
+ public void testCache() {
+ buildRule.executeTarget("testcache");
+ }
+
+ /**
+ * Test the detection and warning of non public classes
+ */
+ @Test
+ public void testNonPublic() {
+ buildRule.executeTarget("src5setup");
+ buildRule.executeTarget("compile");
+
+ FileUtilities.rollbackTimetamps(new File(buildRule.getProject().getProperty("tempsrc.dir")), 5);
+ FileUtilities.rollbackTimetamps(new File(buildRule.getProject().getProperty("classes.dir")), 5);
+
+ buildRule.executeTarget("testnonpublic");
+ String log = buildRule.getLog();
+ assertContains("Expected warning about APrivate",
+ "The class APrivate in file", log);
+ assertContains("but has not been deleted because its source file "
+ + "could not be determined",
+ "The class APrivate in file", log);
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/ant/blob/1ae68097/src/tests/junit/org/apache/tools/ant/taskdefs/optional/i18n/TranslateTest.java
----------------------------------------------------------------------
diff --git a/src/tests/junit/org/apache/tools/ant/taskdefs/optional/i18n/TranslateTest.java b/src/tests/junit/org/apache/tools/ant/taskdefs/optional/i18n/TranslateTest.java
index 6abc4f2..b8749c0 100644
--- a/src/tests/junit/org/apache/tools/ant/taskdefs/optional/i18n/TranslateTest.java
+++ b/src/tests/junit/org/apache/tools/ant/taskdefs/optional/i18n/TranslateTest.java
@@ -1,87 +1,87 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-package org.apache.tools.ant.taskdefs.optional.i18n;
-
-import org.apache.tools.ant.BuildFileRule;
-import org.junit.Before;
-import org.junit.Rule;
-import org.junit.Test;
-
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.IOException;
-
-import static org.junit.Assert.assertTrue;
-
-/**
- * Tests the Translate task.
- *
- * @since Ant 1.6
- */
-public class TranslateTest {
-
- @Rule
- public final BuildFileRule buildRule = new BuildFileRule();
-
- static private final int BUF_SIZE = 32768;
-
- private final static String TASKDEFS_DIR = "src/etc/testcases/taskdefs/optional/i18n/translate";
-
-
-
- @Before
- public void setUp() {
- buildRule.configureProject(TASKDEFS_DIR + "/translate.xml");
- }
-
- @Test
- public void test1() throws IOException {
- buildRule.executeTarget("test1");
- assertTrue("translation of "+ TASKDEFS_DIR + "/input/template.txt",compareFiles(new File(buildRule.getProject().getBaseDir(), "expected/de/template.txt"),
- new File(buildRule.getOutputDir(), "de/template.txt")));
- }
- private boolean compareFiles(File file1, File file2) throws IOException {
- if (!file1.exists() || !file2.exists()) {
- return false;
- }
-
- if (file1.length() != file2.length()) {
- return false;
- }
-
- // byte - byte compare
- byte[] buffer1 = new byte[BUF_SIZE];
- byte[] buffer2 = new byte[BUF_SIZE];
-
- FileInputStream fis1 = new FileInputStream(file1);
- FileInputStream fis2 = new FileInputStream(file2);
- int index = 0;
- int read = 0;
- while ((read = fis1.read(buffer1)) != -1) {
- fis2.read(buffer2);
- for (int i = 0; i < read; ++i, ++index) {
- if (buffer1[i] != buffer2[i]) {
- return false;
- }
- }
- }
- return true;
- }
-}
-
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+package org.apache.tools.ant.taskdefs.optional.i18n;
+
+import org.apache.tools.ant.BuildFileRule;
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.Test;
+
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.IOException;
+
+import static org.junit.Assert.assertTrue;
+
+/**
+ * Tests the Translate task.
+ *
+ * @since Ant 1.6
+ */
+public class TranslateTest {
+
+ @Rule
+ public final BuildFileRule buildRule = new BuildFileRule();
+
+ static private final int BUF_SIZE = 32768;
+
+ private final static String TASKDEFS_DIR = "src/etc/testcases/taskdefs/optional/i18n/translate";
+
+
+
+ @Before
+ public void setUp() {
+ buildRule.configureProject(TASKDEFS_DIR + "/translate.xml");
+ }
+
+ @Test
+ public void test1() throws IOException {
+ buildRule.executeTarget("test1");
+ assertTrue("translation of "+ TASKDEFS_DIR + "/input/template.txt",compareFiles(new File(buildRule.getProject().getBaseDir(), "expected/de/template.txt"),
+ new File(buildRule.getOutputDir(), "de/template.txt")));
+ }
+ private boolean compareFiles(File file1, File file2) throws IOException {
+ if (!file1.exists() || !file2.exists()) {
+ return false;
+ }
+
+ if (file1.length() != file2.length()) {
+ return false;
+ }
+
+ // byte - byte compare
+ byte[] buffer1 = new byte[BUF_SIZE];
+ byte[] buffer2 = new byte[BUF_SIZE];
+
+ FileInputStream fis1 = new FileInputStream(file1);
+ FileInputStream fis2 = new FileInputStream(file2);
+ int index = 0;
+ int read = 0;
+ while ((read = fis1.read(buffer1)) != -1) {
+ fis2.read(buffer2);
+ for (int i = 0; i < read; ++i, ++index) {
+ if (buffer1[i] != buffer2[i]) {
+ return false;
+ }
+ }
+ }
+ return true;
+ }
+}
+
http://git-wip-us.apache.org/repos/asf/ant/blob/1ae68097/src/tests/junit/org/apache/tools/ant/taskdefs/optional/image/ImageTest.java
----------------------------------------------------------------------
diff --git a/src/tests/junit/org/apache/tools/ant/taskdefs/optional/image/ImageTest.java b/src/tests/junit/org/apache/tools/ant/taskdefs/optional/image/ImageTest.java
index be79262..a13a466 100644
--- a/src/tests/junit/org/apache/tools/ant/taskdefs/optional/image/ImageTest.java
+++ b/src/tests/junit/org/apache/tools/ant/taskdefs/optional/image/ImageTest.java
@@ -1,133 +1,133 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-package org.apache.tools.ant.taskdefs.optional.image;
-
-import org.apache.tools.ant.AntAssert;
-import org.apache.tools.ant.BuildFileRule;
-import org.apache.tools.ant.util.FileUtils;
-import org.junit.Before;
-import org.junit.Ignore;
-import org.junit.Rule;
-import org.junit.Test;
-
-import java.io.File;
-
-import static org.junit.Assert.assertTrue;
-import static org.junit.Assume.assumeTrue;
-
-
-/**
- * Tests the Image task.
- *
- * @since Ant 1.5
- */
-public class ImageTest {
-
- private final static String TASKDEFS_DIR =
- "src/etc/testcases/taskdefs/optional/image/";
- private final static String LARGEIMAGE = "largeimage.jpg";
-
- private static final FileUtils FILE_UTILS = FileUtils.getFileUtils();
-
- @Rule
- public BuildFileRule buildRule = new BuildFileRule();
-
- @Before
- public void setUp() {
- buildRule.configureProject(TASKDEFS_DIR + "image.xml");
- }
-
-
- @Test
- public void testEchoToLog() {
- buildRule.executeTarget("testEchoToLog");
- AntAssert.assertContains("Processing File", buildRule.getLog());
- }
-
- @Test
- public void testSimpleScale(){
- buildRule.executeTarget("testSimpleScale");
- AntAssert.assertContains("Processing File", buildRule.getLog());
-
- File f = new File(buildRule.getOutputDir(), LARGEIMAGE);
- assertTrue(
- "Did not create "+f.getAbsolutePath(),
- f.exists());
-
- }
-
- @Test
- public void testOverwriteTrue() throws InterruptedException {
- buildRule.executeTarget("testSimpleScale");
- AntAssert.assertContains("Processing File", buildRule.getLog());
- File f = new File(buildRule.getOutputDir(), LARGEIMAGE);
- assumeTrue("Could not change file modificaiton date",
- f.setLastModified(f.lastModified() - (FILE_UTILS.getFileTimestampGranularity() * 2)));
- long lastModified = f.lastModified();
- buildRule.executeTarget("testOverwriteTrue");
- AntAssert.assertContains("Processing File", buildRule.getLog());
- f = new File(buildRule.getOutputDir(), LARGEIMAGE);
- long overwrittenLastModified = f.lastModified();
- assertTrue("File was not overwritten.",
- lastModified < overwrittenLastModified);
- }
-
- @Test
- public void testOverwriteFalse() {
- buildRule.executeTarget("testSimpleScale");
- AntAssert.assertContains("Processing File", buildRule.getLog());
- File f = new File(buildRule.getOutputDir(), LARGEIMAGE);
- long lastModified = f.lastModified();
- buildRule.executeTarget("testOverwriteFalse");
- AntAssert.assertContains("Processing File", buildRule.getLog());
- f = new File(buildRule.getOutputDir(), LARGEIMAGE);
- long overwrittenLastModified = f.lastModified();
- assertTrue("File was overwritten.",
- lastModified == overwrittenLastModified);
- }
-
- @Test
- public void testSimpleScaleWithMapper() {
- buildRule.executeTarget("testSimpleScaleWithMapper");
- AntAssert.assertContains("Processing File", buildRule.getLog());
- File f = new File(buildRule.getOutputDir(), "scaled-" + LARGEIMAGE);
- assertTrue(
- "Did not create "+f.getAbsolutePath(),
- f.exists());
-
- }
-
- @Test
- @Ignore("Previously named in a manner to prevent execution")
- public void testFailOnError() {
- try {
- buildRule.executeTarget("testFailOnError");
- AntAssert.assertContains("Unable to process image stream", buildRule.getLog());
- }
- catch (RuntimeException re){
- assertTrue("Run time exception should say "
- + "'Unable to process image stream'. :"
- + re.toString(),
- re.toString()
- .indexOf("Unable to process image stream") > -1);
- }
- }
-
-}
-
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+package org.apache.tools.ant.taskdefs.optional.image;
+
+import org.apache.tools.ant.AntAssert;
+import org.apache.tools.ant.BuildFileRule;
+import org.apache.tools.ant.util.FileUtils;
+import org.junit.Before;
+import org.junit.Ignore;
+import org.junit.Rule;
+import org.junit.Test;
+
+import java.io.File;
+
+import static org.junit.Assert.assertTrue;
+import static org.junit.Assume.assumeTrue;
+
+
+/**
+ * Tests the Image task.
+ *
+ * @since Ant 1.5
+ */
+public class ImageTest {
+
+ private final static String TASKDEFS_DIR =
+ "src/etc/testcases/taskdefs/optional/image/";
+ private final static String LARGEIMAGE = "largeimage.jpg";
+
+ private static final FileUtils FILE_UTILS = FileUtils.getFileUtils();
+
+ @Rule
+ public BuildFileRule buildRule = new BuildFileRule();
+
+ @Before
+ public void setUp() {
+ buildRule.configureProject(TASKDEFS_DIR + "image.xml");
+ }
+
+
+ @Test
+ public void testEchoToLog() {
+ buildRule.executeTarget("testEchoToLog");
+ AntAssert.assertContains("Processing File", buildRule.getLog());
+ }
+
+ @Test
+ public void testSimpleScale(){
+ buildRule.executeTarget("testSimpleScale");
+ AntAssert.assertContains("Processing File", buildRule.getLog());
+
+ File f = new File(buildRule.getOutputDir(), LARGEIMAGE);
+ assertTrue(
+ "Did not create "+f.getAbsolutePath(),
+ f.exists());
+
+ }
+
+ @Test
+ public void testOverwriteTrue() throws InterruptedException {
+ buildRule.executeTarget("testSimpleScale");
+ AntAssert.assertContains("Processing File", buildRule.getLog());
+ File f = new File(buildRule.getOutputDir(), LARGEIMAGE);
+ assumeTrue("Could not change file modificaiton date",
+ f.setLastModified(f.lastModified() - (FILE_UTILS.getFileTimestampGranularity() * 2)));
+ long lastModified = f.lastModified();
+ buildRule.executeTarget("testOverwriteTrue");
+ AntAssert.assertContains("Processing File", buildRule.getLog());
+ f = new File(buildRule.getOutputDir(), LARGEIMAGE);
+ long overwrittenLastModified = f.lastModified();
+ assertTrue("File was not overwritten.",
+ lastModified < overwrittenLastModified);
+ }
+
+ @Test
+ public void testOverwriteFalse() {
+ buildRule.executeTarget("testSimpleScale");
+ AntAssert.assertContains("Processing File", buildRule.getLog());
+ File f = new File(buildRule.getOutputDir(), LARGEIMAGE);
+ long lastModified = f.lastModified();
+ buildRule.executeTarget("testOverwriteFalse");
+ AntAssert.assertContains("Processing File", buildRule.getLog());
+ f = new File(buildRule.getOutputDir(), LARGEIMAGE);
+ long overwrittenLastModified = f.lastModified();
+ assertTrue("File was overwritten.",
+ lastModified == overwrittenLastModified);
+ }
+
+ @Test
+ public void testSimpleScaleWithMapper() {
+ buildRule.executeTarget("testSimpleScaleWithMapper");
+ AntAssert.assertContains("Processing File", buildRule.getLog());
+ File f = new File(buildRule.getOutputDir(), "scaled-" + LARGEIMAGE);
+ assertTrue(
+ "Did not create "+f.getAbsolutePath(),
+ f.exists());
+
+ }
+
+ @Test
+ @Ignore("Previously named in a manner to prevent execution")
+ public void testFailOnError() {
+ try {
+ buildRule.executeTarget("testFailOnError");
+ AntAssert.assertContains("Unable to process image stream", buildRule.getLog());
+ }
+ catch (RuntimeException re){
+ assertTrue("Run time exception should say "
+ + "'Unable to process image stream'. :"
+ + re.toString(),
+ re.toString()
+ .indexOf("Unable to process image stream") > -1);
+ }
+ }
+
+}
+
http://git-wip-us.apache.org/repos/asf/ant/blob/1ae68097/src/tests/junit/org/apache/tools/ant/taskdefs/optional/jdepend/JDependTest.java
----------------------------------------------------------------------
diff --git a/src/tests/junit/org/apache/tools/ant/taskdefs/optional/jdepend/JDependTest.java b/src/tests/junit/org/apache/tools/ant/taskdefs/optional/jdepend/JDependTest.java
index 545b7cb..54c6055 100644
--- a/src/tests/junit/org/apache/tools/ant/taskdefs/optional/jdepend/JDependTest.java
+++ b/src/tests/junit/org/apache/tools/ant/taskdefs/optional/jdepend/JDependTest.java
@@ -1,99 +1,99 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-package org.apache.tools.ant.taskdefs.optional.jdepend;
-
-import org.apache.tools.ant.AntAssert;
-import org.apache.tools.ant.BuildFileRule;
-import org.junit.Before;
-import org.junit.Rule;
-import org.junit.Test;
-
-/**
- * Testcase for the JDepend optional task.
- *
- */
-public class JDependTest {
-
- @Rule
- public BuildFileRule buildRule = new BuildFileRule();
-
- @Before
- public void setUp() {
- buildRule.configureProject(
- "src/etc/testcases/taskdefs/optional/jdepend/jdepend.xml");
- }
-
- /**
- * Test simple
- */
- @Test
- public void testSimple() {
- buildRule.executeTarget("simple");
- AntAssert.assertContains("Package: org.apache.tools.ant.util.facade",
- buildRule.getOutput());
- }
-
- /**
- * Test xml
- */
- @Test
- public void testXml() {
- buildRule.executeTarget("xml");
- AntAssert.assertContains("<DependsUpon>", buildRule.getOutput());
- }
-
- /**
- * Test fork
- * - forked output goes to log
- */
- @Test
- public void testFork() {
- buildRule.executeTarget("fork");
- AntAssert.assertContains("Package: org.apache.tools.ant.util.facade", buildRule.getLog());
- }
-
- /**
- * Test fork xml
- */
- @Test
- public void testForkXml() {
- buildRule.executeTarget("fork-xml");
- AntAssert.assertContains("<DependsUpon>", buildRule.getLog());
- }
-
- /**
- * Test timeout
- */
- @Test
- public void testTimeout() {
- buildRule.executeTarget("fork-xml");
- AntAssert.assertContains( "JDepend FAILED - Timed out", buildRule.getLog());
- }
-
-
- /**
- * Test timeout without timing out
- */
- @Test
- public void testTimeoutNot() {
- buildRule.executeTarget("fork-timeout-not");
- AntAssert.assertContains("Package: org.apache.tools.ant.util.facade", buildRule.getLog());
- }
-
-}
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+package org.apache.tools.ant.taskdefs.optional.jdepend;
+
+import org.apache.tools.ant.AntAssert;
+import org.apache.tools.ant.BuildFileRule;
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.Test;
+
+/**
+ * Testcase for the JDepend optional task.
+ *
+ */
+public class JDependTest {
+
+ @Rule
+ public BuildFileRule buildRule = new BuildFileRule();
+
+ @Before
+ public void setUp() {
+ buildRule.configureProject(
+ "src/etc/testcases/taskdefs/optional/jdepend/jdepend.xml");
+ }
+
+ /**
+ * Test simple
+ */
+ @Test
+ public void testSimple() {
+ buildRule.executeTarget("simple");
+ AntAssert.assertContains("Package: org.apache.tools.ant.util.facade",
+ buildRule.getOutput());
+ }
+
+ /**
+ * Test xml
+ */
+ @Test
+ public void testXml() {
+ buildRule.executeTarget("xml");
+ AntAssert.assertContains("<DependsUpon>", buildRule.getOutput());
+ }
+
+ /**
+ * Test fork
+ * - forked output goes to log
+ */
+ @Test
+ public void testFork() {
+ buildRule.executeTarget("fork");
+ AntAssert.assertContains("Package: org.apache.tools.ant.util.facade", buildRule.getLog());
+ }
+
+ /**
+ * Test fork xml
+ */
+ @Test
+ public void testForkXml() {
+ buildRule.executeTarget("fork-xml");
+ AntAssert.assertContains("<DependsUpon>", buildRule.getLog());
+ }
+
+ /**
+ * Test timeout
+ */
+ @Test
+ public void testTimeout() {
+ buildRule.executeTarget("fork-xml");
+ AntAssert.assertContains( "JDepend FAILED - Timed out", buildRule.getLog());
+ }
+
+
+ /**
+ * Test timeout without timing out
+ */
+ @Test
+ public void testTimeoutNot() {
+ buildRule.executeTarget("fork-timeout-not");
+ AntAssert.assertContains("Package: org.apache.tools.ant.util.facade", buildRule.getLog());
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/ant/blob/1ae68097/src/tests/junit/org/apache/tools/ant/taskdefs/optional/junit/BatchTestTest.java
----------------------------------------------------------------------
diff --git a/src/tests/junit/org/apache/tools/ant/taskdefs/optional/junit/BatchTestTest.java b/src/tests/junit/org/apache/tools/ant/taskdefs/optional/junit/BatchTestTest.java
index 52a12ec..a969499 100644
--- a/src/tests/junit/org/apache/tools/ant/taskdefs/optional/junit/BatchTestTest.java
+++ b/src/tests/junit/org/apache/tools/ant/taskdefs/optional/junit/BatchTestTest.java
@@ -1,121 +1,121 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-package org.apache.tools.ant.taskdefs.optional.junit;
-
-
-import static org.junit.Assert.fail;
-import static org.junit.Assert.assertArrayEquals;
-
-import org.junit.Test;
-
-/**
- *
- * @author Marian Petras
- */
-public class BatchTestTest {
-
- @Test
- public void testParseTestMethodNamesList() {
- try {
- JUnitTest.parseTestMethodNamesList(null);
- fail("IllegalArgumentException expected when the param is <null>");
- } catch (IllegalArgumentException ex) {
- //this is an expected exception
- }
-
- assertArrayEquals(new String[0], JUnitTest.parseTestMethodNamesList(""));
- assertArrayEquals(new String[0], JUnitTest.parseTestMethodNamesList(" "));
- assertArrayEquals(new String[0], JUnitTest.parseTestMethodNamesList(" "));
-
- checkParseCausesIAE(",");
- checkParseCausesIAE(" ,");
- checkParseCausesIAE(", ");
- checkParseCausesIAE(" , ");
- checkParseCausesIAE(",a");
- checkParseCausesIAE(" ,a");
- checkParseCausesIAE(" ,a");
- checkParseCausesIAE(" , a");
- checkParseCausesIAE(" ,a ");
- checkParseCausesIAE(" ,a ,");
- checkParseCausesIAE("ab,,cd");
- checkParseCausesIAE("ab, ,cd");
- checkParseCausesIAE("ab, ,cd");
- checkParseCausesIAE("ab, ,cd,");
- checkParseCausesIAE(",ab, ,cd,");
-
- assertArrayEquals(new String[] {"abc"}, JUnitTest.parseTestMethodNamesList("abc"));
- assertArrayEquals(new String[] {"abc"}, JUnitTest.parseTestMethodNamesList("abc "));
- assertArrayEquals(new String[] {"abc"}, JUnitTest.parseTestMethodNamesList(" abc"));
- assertArrayEquals(new String[] {"abc"}, JUnitTest.parseTestMethodNamesList(" abc "));
- assertArrayEquals(new String[] {"abc"}, JUnitTest.parseTestMethodNamesList("abc "));
- assertArrayEquals(new String[] {"abc"}, JUnitTest.parseTestMethodNamesList("abc,"));
- assertArrayEquals(new String[] {"abc"}, JUnitTest.parseTestMethodNamesList("abc, "));
- assertArrayEquals(new String[] {"abc"}, JUnitTest.parseTestMethodNamesList("abc ,"));
- assertArrayEquals(new String[] {"abc"}, JUnitTest.parseTestMethodNamesList("abc , "));
- assertArrayEquals(new String[] {"abc"}, JUnitTest.parseTestMethodNamesList(" abc ,"));
-
- /* legal Java identifiers: */
- assertArrayEquals(new String[] {"a"}, JUnitTest.parseTestMethodNamesList("a"));
- assertArrayEquals(new String[] {"a1"}, JUnitTest.parseTestMethodNamesList("a1"));
- assertArrayEquals(new String[] {"a$"}, JUnitTest.parseTestMethodNamesList("a$"));
- assertArrayEquals(new String[] {"a$1"}, JUnitTest.parseTestMethodNamesList("a$1"));
- assertArrayEquals(new String[] {"_bc"}, JUnitTest.parseTestMethodNamesList("_bc"));
- assertArrayEquals(new String[] {"___"}, JUnitTest.parseTestMethodNamesList("___"));
-
- /* illegal Java identifiers: */
- checkParseCausesIAE("1");
- checkParseCausesIAE("1a");
- checkParseCausesIAE("1ab");
- checkParseCausesIAE("1abc");
- checkParseCausesIAE("1abc d");
- checkParseCausesIAE("1abc de");
- checkParseCausesIAE("1abc def");
- checkParseCausesIAE("1abc def,");
- checkParseCausesIAE(",1abc def");
-
- assertArrayEquals(new String[] {"abc", "def"}, JUnitTest.parseTestMethodNamesList("abc,def"));
- assertArrayEquals(new String[] {"abc", "def"}, JUnitTest.parseTestMethodNamesList("abc,def,"));
- assertArrayEquals(new String[] {"abc", "def"}, JUnitTest.parseTestMethodNamesList("abc,def "));
- assertArrayEquals(new String[] {"abc", "def"}, JUnitTest.parseTestMethodNamesList("abc, def"));
- assertArrayEquals(new String[] {"abc", "def"}, JUnitTest.parseTestMethodNamesList("abc, def "));
- assertArrayEquals(new String[] {"abc", "def"}, JUnitTest.parseTestMethodNamesList("abc ,def"));
- assertArrayEquals(new String[] {"abc", "def"}, JUnitTest.parseTestMethodNamesList("abc ,def "));
- assertArrayEquals(new String[] {"abc", "def"}, JUnitTest.parseTestMethodNamesList("abc , def"));
- assertArrayEquals(new String[] {"abc", "def"}, JUnitTest.parseTestMethodNamesList("abc , def "));
- assertArrayEquals(new String[] {"abc", "def"}, JUnitTest.parseTestMethodNamesList(" abc,def"));
- assertArrayEquals(new String[] {"abc", "def"}, JUnitTest.parseTestMethodNamesList(" abc,def "));
- assertArrayEquals(new String[] {"abc", "def"}, JUnitTest.parseTestMethodNamesList(" abc, def"));
- assertArrayEquals(new String[] {"abc", "def"}, JUnitTest.parseTestMethodNamesList(" abc, def "));
- assertArrayEquals(new String[] {"abc", "def"}, JUnitTest.parseTestMethodNamesList(" abc ,def"));
- assertArrayEquals(new String[] {"abc", "def"}, JUnitTest.parseTestMethodNamesList(" abc ,def "));
- assertArrayEquals(new String[] {"abc", "def"}, JUnitTest.parseTestMethodNamesList(" abc , def"));
- assertArrayEquals(new String[] {"abc", "def"}, JUnitTest.parseTestMethodNamesList(" abc , def "));
- assertArrayEquals(new String[] {"abc", "def"}, JUnitTest.parseTestMethodNamesList(" abc , def ,"));
- }
-
- private static void checkParseCausesIAE(String param) {
- try {
- JUnitTest.parseTestMethodNamesList(param);
- fail("IllegalArgumentException expected when the param is \"" + param + '"');
- } catch (IllegalArgumentException ex) {
- //this is an expected exception
- }
- }
-
-}
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+package org.apache.tools.ant.taskdefs.optional.junit;
+
+
+import static org.junit.Assert.fail;
+import static org.junit.Assert.assertArrayEquals;
+
+import org.junit.Test;
+
+/**
+ *
+ * @author Marian Petras
+ */
+public class BatchTestTest {
+
+ @Test
+ public void testParseTestMethodNamesList() {
+ try {
+ JUnitTest.parseTestMethodNamesList(null);
+ fail("IllegalArgumentException expected when the param is <null>");
+ } catch (IllegalArgumentException ex) {
+ //this is an expected exception
+ }
+
+ assertArrayEquals(new String[0], JUnitTest.parseTestMethodNamesList(""));
+ assertArrayEquals(new String[0], JUnitTest.parseTestMethodNamesList(" "));
+ assertArrayEquals(new String[0], JUnitTest.parseTestMethodNamesList(" "));
+
+ checkParseCausesIAE(",");
+ checkParseCausesIAE(" ,");
+ checkParseCausesIAE(", ");
+ checkParseCausesIAE(" , ");
+ checkParseCausesIAE(",a");
+ checkParseCausesIAE(" ,a");
+ checkParseCausesIAE(" ,a");
+ checkParseCausesIAE(" , a");
+ checkParseCausesIAE(" ,a ");
+ checkParseCausesIAE(" ,a ,");
+ checkParseCausesIAE("ab,,cd");
+ checkParseCausesIAE("ab, ,cd");
+ checkParseCausesIAE("ab, ,cd");
+ checkParseCausesIAE("ab, ,cd,");
+ checkParseCausesIAE(",ab, ,cd,");
+
+ assertArrayEquals(new String[] {"abc"}, JUnitTest.parseTestMethodNamesList("abc"));
+ assertArrayEquals(new String[] {"abc"}, JUnitTest.parseTestMethodNamesList("abc "));
+ assertArrayEquals(new String[] {"abc"}, JUnitTest.parseTestMethodNamesList(" abc"));
+ assertArrayEquals(new String[] {"abc"}, JUnitTest.parseTestMethodNamesList(" abc "));
+ assertArrayEquals(new String[] {"abc"}, JUnitTest.parseTestMethodNamesList("abc "));
+ assertArrayEquals(new String[] {"abc"}, JUnitTest.parseTestMethodNamesList("abc,"));
+ assertArrayEquals(new String[] {"abc"}, JUnitTest.parseTestMethodNamesList("abc, "));
+ assertArrayEquals(new String[] {"abc"}, JUnitTest.parseTestMethodNamesList("abc ,"));
+ assertArrayEquals(new String[] {"abc"}, JUnitTest.parseTestMethodNamesList("abc , "));
+ assertArrayEquals(new String[] {"abc"}, JUnitTest.parseTestMethodNamesList(" abc ,"));
+
+ /* legal Java identifiers: */
+ assertArrayEquals(new String[] {"a"}, JUnitTest.parseTestMethodNamesList("a"));
+ assertArrayEquals(new String[] {"a1"}, JUnitTest.parseTestMethodNamesList("a1"));
+ assertArrayEquals(new String[] {"a$"}, JUnitTest.parseTestMethodNamesList("a$"));
+ assertArrayEquals(new String[] {"a$1"}, JUnitTest.parseTestMethodNamesList("a$1"));
+ assertArrayEquals(new String[] {"_bc"}, JUnitTest.parseTestMethodNamesList("_bc"));
+ assertArrayEquals(new String[] {"___"}, JUnitTest.parseTestMethodNamesList("___"));
+
+ /* illegal Java identifiers: */
+ checkParseCausesIAE("1");
+ checkParseCausesIAE("1a");
+ checkParseCausesIAE("1ab");
+ checkParseCausesIAE("1abc");
+ checkParseCausesIAE("1abc d");
+ checkParseCausesIAE("1abc de");
+ checkParseCausesIAE("1abc def");
+ checkParseCausesIAE("1abc def,");
+ checkParseCausesIAE(",1abc def");
+
+ assertArrayEquals(new String[] {"abc", "def"}, JUnitTest.parseTestMethodNamesList("abc,def"));
+ assertArrayEquals(new String[] {"abc", "def"}, JUnitTest.parseTestMethodNamesList("abc,def,"));
+ assertArrayEquals(new String[] {"abc", "def"}, JUnitTest.parseTestMethodNamesList("abc,def "));
+ assertArrayEquals(new String[] {"abc", "def"}, JUnitTest.parseTestMethodNamesList("abc, def"));
+ assertArrayEquals(new String[] {"abc", "def"}, JUnitTest.parseTestMethodNamesList("abc, def "));
+ assertArrayEquals(new String[] {"abc", "def"}, JUnitTest.parseTestMethodNamesList("abc ,def"));
+ assertArrayEquals(new String[] {"abc", "def"}, JUnitTest.parseTestMethodNamesList("abc ,def "));
+ assertArrayEquals(new String[] {"abc", "def"}, JUnitTest.parseTestMethodNamesList("abc , def"));
+ assertArrayEquals(new String[] {"abc", "def"}, JUnitTest.parseTestMethodNamesList("abc , def "));
+ assertArrayEquals(new String[] {"abc", "def"}, JUnitTest.parseTestMethodNamesList(" abc,def"));
+ assertArrayEquals(new String[] {"abc", "def"}, JUnitTest.parseTestMethodNamesList(" abc,def "));
+ assertArrayEquals(new String[] {"abc", "def"}, JUnitTest.parseTestMethodNamesList(" abc, def"));
+ assertArrayEquals(new String[] {"abc", "def"}, JUnitTest.parseTestMethodNamesList(" abc, def "));
+ assertArrayEquals(new String[] {"abc", "def"}, JUnitTest.parseTestMethodNamesList(" abc ,def"));
+ assertArrayEquals(new String[] {"abc", "def"}, JUnitTest.parseTestMethodNamesList(" abc ,def "));
+ assertArrayEquals(new String[] {"abc", "def"}, JUnitTest.parseTestMethodNamesList(" abc , def"));
+ assertArrayEquals(new String[] {"abc", "def"}, JUnitTest.parseTestMethodNamesList(" abc , def "));
+ assertArrayEquals(new String[] {"abc", "def"}, JUnitTest.parseTestMethodNamesList(" abc , def ,"));
+ }
+
+ private static void checkParseCausesIAE(String param) {
+ try {
+ JUnitTest.parseTestMethodNamesList(param);
+ fail("IllegalArgumentException expected when the param is \"" + param + '"');
+ } catch (IllegalArgumentException ex) {
+ //this is an expected exception
+ }
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/ant/blob/1ae68097/src/tests/junit/org/apache/tools/ant/taskdefs/optional/junit/DOMUtilTest.java
----------------------------------------------------------------------
diff --git a/src/tests/junit/org/apache/tools/ant/taskdefs/optional/junit/DOMUtilTest.java b/src/tests/junit/org/apache/tools/ant/taskdefs/optional/junit/DOMUtilTest.java
index b72f69c..7591ada 100644
--- a/src/tests/junit/org/apache/tools/ant/taskdefs/optional/junit/DOMUtilTest.java
+++ b/src/tests/junit/org/apache/tools/ant/taskdefs/optional/junit/DOMUtilTest.java
@@ -1,53 +1,53 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-package org.apache.tools.ant.taskdefs.optional.junit;
-
-import static org.junit.Assert.assertEquals;
-
-import java.io.IOException;
-import java.io.InputStream;
-
-import javax.xml.parsers.DocumentBuilder;
-
-import org.apache.tools.ant.util.JAXPUtils;
-import org.junit.Test;
-import org.w3c.dom.Document;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-import org.xml.sax.SAXException;
-
-public class DOMUtilTest {
-
- @Test
- public void testListChildNodes() throws SAXException, IOException {
- DocumentBuilder db = JAXPUtils.getDocumentBuilder();
- InputStream is = this.getClass().getClassLoader().getResourceAsStream("taskdefs/optional/junit/matches.xml");
- Document doc = db.parse(is);
- NodeList nl = DOMUtil.listChildNodes(doc.getDocumentElement(), new FooNodeFilter(), true);
- assertEquals("expecting 3", 3, nl.getLength());
- }
-
- public class FooNodeFilter implements DOMUtil.NodeFilter {
- public boolean accept(Node node) {
- if (node.getNodeName().equals("foo")) {
- return true;
- }
- return false;
- }
- }
-}
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+package org.apache.tools.ant.taskdefs.optional.junit;
+
+import static org.junit.Assert.assertEquals;
+
+import java.io.IOException;
+import java.io.InputStream;
+
+import javax.xml.parsers.DocumentBuilder;
+
+import org.apache.tools.ant.util.JAXPUtils;
+import org.junit.Test;
+import org.w3c.dom.Document;
+import org.w3c.dom.Node;
+import org.w3c.dom.NodeList;
+import org.xml.sax.SAXException;
+
+public class DOMUtilTest {
+
+ @Test
+ public void testListChildNodes() throws SAXException, IOException {
+ DocumentBuilder db = JAXPUtils.getDocumentBuilder();
+ InputStream is = this.getClass().getClassLoader().getResourceAsStream("taskdefs/optional/junit/matches.xml");
+ Document doc = db.parse(is);
+ NodeList nl = DOMUtil.listChildNodes(doc.getDocumentElement(), new FooNodeFilter(), true);
+ assertEquals("expecting 3", 3, nl.getLength());
+ }
+
+ public class FooNodeFilter implements DOMUtil.NodeFilter {
+ public boolean accept(Node node) {
+ if (node.getNodeName().equals("foo")) {
+ return true;
+ }
+ return false;
+ }
+ }
+}
http://git-wip-us.apache.org/repos/asf/ant/blob/1ae68097/src/tests/junit/org/apache/tools/ant/taskdefs/optional/junit/JUnitClassLoaderTest.java
----------------------------------------------------------------------
diff --git a/src/tests/junit/org/apache/tools/ant/taskdefs/optional/junit/JUnitClassLoaderTest.java b/src/tests/junit/org/apache/tools/ant/taskdefs/optional/junit/JUnitClassLoaderTest.java
index 4baf741..0c303c1 100644
--- a/src/tests/junit/org/apache/tools/ant/taskdefs/optional/junit/JUnitClassLoaderTest.java
+++ b/src/tests/junit/org/apache/tools/ant/taskdefs/optional/junit/JUnitClassLoaderTest.java
@@ -1,37 +1,37 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-package org.apache.tools.ant.taskdefs.optional.junit;
-
-import static org.junit.Assert.assertSame;
-
-import org.junit.Test;
-
-/**
- * Test to ensure that the classloader loading JUnit testcase
- * is also the context classloader.
- *
- */
-public class JUnitClassLoaderTest {
-
- @Test
- public void testContextClassLoader(){
- ClassLoader context = Thread.currentThread().getContextClassLoader();
- ClassLoader caller = getClass().getClassLoader();
- assertSame(context, caller);
- }
-}
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+package org.apache.tools.ant.taskdefs.optional.junit;
+
+import static org.junit.Assert.assertSame;
+
+import org.junit.Test;
+
+/**
+ * Test to ensure that the classloader loading JUnit testcase
+ * is also the context classloader.
+ *
+ */
+public class JUnitClassLoaderTest {
+
+ @Test
+ public void testContextClassLoader(){
+ ClassLoader context = Thread.currentThread().getContextClassLoader();
+ ClassLoader caller = getClass().getClassLoader();
+ assertSame(context, caller);
+ }
+}
http://git-wip-us.apache.org/repos/asf/ant/blob/1ae68097/src/tests/junit/org/apache/tools/ant/taskdefs/optional/junit/JUnitReportTest.java
----------------------------------------------------------------------
diff --git a/src/tests/junit/org/apache/tools/ant/taskdefs/optional/junit/JUnitReportTest.java b/src/tests/junit/org/apache/tools/ant/taskdefs/optional/junit/JUnitReportTest.java
index c5b6feb..63eb197 100644
--- a/src/tests/junit/org/apache/tools/ant/taskdefs/optional/junit/JUnitReportTest.java
+++ b/src/tests/junit/org/apache/tools/ant/taskdefs/optional/junit/JUnitReportTest.java
@@ -1,211 +1,211 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-package org.apache.tools.ant.taskdefs.optional.junit;
-
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertTrue;
-import static org.apache.tools.ant.AntAssert.assertContains;
-import static org.junit.Assert.fail;
-
-import java.io.File;
-import java.io.FileReader;
-import java.io.InputStream;
-import java.net.URL;
-
-import org.apache.tools.ant.BuildFileRule;
-import org.apache.tools.ant.util.FileUtils;
-import org.junit.Before;
-import org.junit.Rule;
-import org.junit.Test;
-
-/**
- * Small testcase for the junitreporttask.
- * First test added to reproduce an fault, still a lot to improve
- *
- */
-public class JUnitReportTest {
-
- @Rule
- public BuildFileRule buildRule = new BuildFileRule();
-
- @Before
- public void setUp() {
- buildRule.configureProject("src/etc/testcases/taskdefs/optional/junitreport.xml");
- }
-
- /**
- * Verifies that no empty junit-noframes.html is generated when frames
- * output is selected via the default.
- * Needs reports1 task from junitreport.xml.
- */
- @Test
- public void testNoFileJUnitNoFrames() {
- buildRule.executeTarget("reports1");
- assertFalse("No file junit-noframes.html expected", (new File(System.getProperty("root"), "src/etc/testcases/taskdefs/optional/junitreport/test/html/junit-noframes.html").exists()));
-
- }
-
- public void assertIndexCreated() {
- if (!new File(buildRule.getProject().getProperty("output"), "html/index.html").exists()) {
- fail("No file index file found");
- }
-
- }
-
-
- @Test
- public void testEmptyFile() throws Exception {
- buildRule.executeTarget("testEmptyFile");
- assertIndexCreated();
- assertContains("Required text not found in log", XMLResultAggregator.WARNING_EMPTY_FILE, buildRule.getLog());
- }
-
- @Test
- public void testIncompleteFile() throws Exception {
- buildRule.executeTarget("testIncompleteFile");
- assertIndexCreated();
- assertContains("Required text not found in log", XMLResultAggregator.WARNING_IS_POSSIBLY_CORRUPTED, buildRule.getLog());
- }
-
- @Test
- public void testWrongElement() throws Exception {
- buildRule.executeTarget("testWrongElement");
- assertIndexCreated();
- assertContains("Required text not found in log", XMLResultAggregator.WARNING_INVALID_ROOT_ELEMENT, buildRule.getLog());
- }
-
- // Bugzilla Report 34963
- @Test
- public void testStackTraceLineBreaks() throws Exception {
- buildRule.executeTarget("testStackTraceLineBreaks");
- assertIndexCreated();
- FileReader r = null;
- try {
- r = new FileReader(new File(buildRule.getOutputDir(), "html/sampleproject/coins/0_CoinTest.html"));
- String report = FileUtils.readFully(r);
- assertContains("output must contain <br>:\n" + report, "junit.framework.AssertionFailedError: DOEG<br>", report);
- assertContains("#51049: output must translate line breaks:\n" + report, "cur['line.separator'] = '\\r\\n';", report);
- } finally {
- FileUtils.close(r);
- }
- }
-
-
- // Bugzilla Report 38477
- @Test
- public void testSpecialSignsInSrcPath() throws Exception {
- buildRule.executeTarget("testSpecialSignsInSrcPath");
- File reportFile = new File(buildRule.getOutputDir(), "html/index.html");
- // tests one the file object
- assertTrue("No index.html present. Not generated?", reportFile.exists() );
- assertTrue("Cant read the report file.", reportFile.canRead() );
- assertTrue("File shouldn't be empty.", reportFile.length() > 0 );
- // conversion to URL via FileUtils like in XMLResultAggregator, not as suggested in the bug report
- URL reportUrl = new URL( FileUtils.getFileUtils().toURI(reportFile.getAbsolutePath()) );
- InputStream reportStream = reportUrl.openStream();
- assertTrue("This shouldn't be an empty stream.", reportStream.available() > 0);
- }
-
- @Test
- public void testSpecialSignsInHtmlPath() throws Exception {
- buildRule.executeTarget("testSpecialSignsInHtmlPath");
- File reportFile = new File(buildRule.getOutputDir(), "html# $%\u00A7&-!report/index.html");
- // tests one the file object
- assertTrue("No index.html present. Not generated?", reportFile.exists() );
- assertTrue("Cant read the report file.", reportFile.canRead() );
- assertTrue("File shouldn't be empty.", reportFile.length() > 0 );
- // conversion to URL via FileUtils like in XMLResultAggregator, not as suggested in the bug report
- URL reportUrl = new URL( FileUtils.getFileUtils().toURI(reportFile.getAbsolutePath()) );
- InputStream reportStream = reportUrl.openStream();
- assertTrue("This shouldn't be an empty stream.", reportStream.available() > 0);
- }
-
- //Bugzilla Report 39708
- @Test
- public void testWithStyleFromDir() throws Exception {
- buildRule.executeTarget("testWithStyleFromDir");
- File reportFile = new File(buildRule.getOutputDir(), "html/index.html");
- // tests one the file object
- assertTrue("No index.html present. Not generated?", reportFile.exists() );
- assertTrue("Cant read the report file.", reportFile.canRead() );
- assertTrue("File shouldn't be empty.", reportFile.length() > 0 );
- // conversion to URL via FileUtils like in XMLResultAggregator, not as suggested in the bug report
- URL reportUrl = new URL( FileUtils.getFileUtils().toURI(reportFile.getAbsolutePath()) );
- InputStream reportStream = reportUrl.openStream();
- assertTrue("This shouldn't be an empty stream.", reportStream.available() > 0);
- }
-
- //Bugzilla Report 40021
- @Test
- public void testNoFrames() throws Exception {
- buildRule.executeTarget("testNoFrames");
- File reportFile = new File(buildRule.getOutputDir(), "html/junit-noframes.html");
- // tests one the file object
- assertTrue("No junit-noframes.html present. Not generated?", reportFile.exists() );
- assertTrue("Cant read the report file.", reportFile.canRead() );
- assertTrue("File shouldn't be empty.", reportFile.length() > 0 );
- // conversion to URL via FileUtils like in XMLResultAggregator, not as suggested in the bug report
- URL reportUrl = new URL( FileUtils.getFileUtils().toURI(reportFile.getAbsolutePath()) );
- InputStream reportStream = reportUrl.openStream();
- assertTrue("This shouldn't be an empty stream.", reportStream.available() > 0);
- }
- //Bugzilla Report 39708
- @Test
- public void testWithStyleFromDirAndXslImport() throws Exception {
- buildRule.executeTarget("testWithStyleFromDirAndXslImport");
- File reportFile = new File(buildRule.getOutputDir(), "html/index.html");
- // tests one the file object
- assertTrue("No index.html present. Not generated?", reportFile.exists() );
- assertTrue("Cant read the report file.", reportFile.canRead() );
- assertTrue("File shouldn't be empty.", reportFile.length() > 0 );
- // conversion to URL via FileUtils like in XMLResultAggregator, not as suggested in the bug report
- URL reportUrl = new URL( FileUtils.getFileUtils().toURI(reportFile.getAbsolutePath()) );
- InputStream reportStream = reportUrl.openStream();
- assertTrue("This shouldn't be an empty stream.", reportStream.available() > 0);
- }
-
- @Test
- public void testWithStyleFromClasspath() throws Exception {
- buildRule.executeTarget("testWithStyleFromClasspath");
- File reportFile = new File(buildRule.getOutputDir(), "html/index.html");
- // tests one the file object
- assertTrue("No index.html present. Not generated?", reportFile.exists() );
- assertTrue("Cant read the report file.", reportFile.canRead() );
- assertTrue("File shouldn't be empty.", reportFile.length() > 0 );
- // conversion to URL via FileUtils like in XMLResultAggregator, not as suggested in the bug report
- URL reportUrl = new URL( FileUtils.getFileUtils().toURI(reportFile.getAbsolutePath()) );
- InputStream reportStream = reportUrl.openStream();
- assertTrue("This shouldn't be an empty stream.", reportStream.available() > 0);
- }
-
- @Test
- public void testWithParams() throws Exception {
- buildRule.executeTarget("testWithParams");
- assertContains("key1=value1,key2=value2", buildRule.getLog());
- File reportFile = new File(buildRule.getOutputDir(), "html/index.html");
- // tests one the file object
- assertTrue("No index.html present. Not generated?", reportFile.exists() );
- assertTrue("Cant read the report file.", reportFile.canRead() );
- assertTrue("File shouldn't be empty.", reportFile.length() > 0 );
- // conversion to URL via FileUtils like in XMLResultAggregator, not as suggested in the bug report
- URL reportUrl = new URL( FileUtils.getFileUtils().toURI(reportFile.getAbsolutePath()) );
- InputStream reportStream = reportUrl.openStream();
- assertTrue("This shouldn't be an empty stream.", reportStream.available() > 0);
- }
-}
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+package org.apache.tools.ant.taskdefs.optional.junit;
+
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertTrue;
+import static org.apache.tools.ant.AntAssert.assertContains;
+import static org.junit.Assert.fail;
+
+import java.io.File;
+import java.io.FileReader;
+import java.io.InputStream;
+import java.net.URL;
+
+import org.apache.tools.ant.BuildFileRule;
+import org.apache.tools.ant.util.FileUtils;
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.Test;
+
+/**
+ * Small testcase for the junitreporttask.
+ * First test added to reproduce an fault, still a lot to improve
+ *
+ */
+public class JUnitReportTest {
+
+ @Rule
+ public BuildFileRule buildRule = new BuildFileRule();
+
+ @Before
+ public void setUp() {
+ buildRule.configureProject("src/etc/testcases/taskdefs/optional/junitreport.xml");
+ }
+
+ /**
+ * Verifies that no empty junit-noframes.html is generated when frames
+ * output is selected via the default.
+ * Needs reports1 task from junitreport.xml.
+ */
+ @Test
+ public void testNoFileJUnitNoFrames() {
+ buildRule.executeTarget("reports1");
+ assertFalse("No file junit-noframes.html expected", (new File(System.getProperty("root"), "src/etc/testcases/taskdefs/optional/junitreport/test/html/junit-noframes.html").exists()));
+
+ }
+
+ public void assertIndexCreated() {
+ if (!new File(buildRule.getProject().getProperty("output"), "html/index.html").exists()) {
+ fail("No file index file found");
+ }
+
+ }
+
+
+ @Test
+ public void testEmptyFile() throws Exception {
+ buildRule.executeTarget("testEmptyFile");
+ assertIndexCreated();
+ assertContains("Required text not found in log", XMLResultAggregator.WARNING_EMPTY_FILE, buildRule.getLog());
+ }
+
+ @Test
+ public void testIncompleteFile() throws Exception {
+ buildRule.executeTarget("testIncompleteFile");
+ assertIndexCreated();
+ assertContains("Required text not found in log", XMLResultAggregator.WARNING_IS_POSSIBLY_CORRUPTED, buildRule.getLog());
+ }
+
+ @Test
+ public void testWrongElement() throws Exception {
+ buildRule.executeTarget("testWrongElement");
+ assertIndexCreated();
+ assertContains("Required text not found in log", XMLResultAggregator.WARNING_INVALID_ROOT_ELEMENT, buildRule.getLog());
+ }
+
+ // Bugzilla Report 34963
+ @Test
+ public void testStackTraceLineBreaks() throws Exception {
+ buildRule.executeTarget("testStackTraceLineBreaks");
+ assertIndexCreated();
+ FileReader r = null;
+ try {
+ r = new FileReader(new File(buildRule.getOutputDir(), "html/sampleproject/coins/0_CoinTest.html"));
+ String report = FileUtils.readFully(r);
+ assertContains("output must contain <br>:\n" + report, "junit.framework.AssertionFailedError: DOEG<br>", report);
+ assertContains("#51049: output must translate line breaks:\n" + report, "cur['line.separator'] = '\\r\\n';", report);
+ } finally {
+ FileUtils.close(r);
+ }
+ }
+
+
+ // Bugzilla Report 38477
+ @Test
+ public void testSpecialSignsInSrcPath() throws Exception {
+ buildRule.executeTarget("testSpecialSignsInSrcPath");
+ File reportFile = new File(buildRule.getOutputDir(), "html/index.html");
+ // tests one the file object
+ assertTrue("No index.html present. Not generated?", reportFile.exists() );
+ assertTrue("Cant read the report file.", reportFile.canRead() );
+ assertTrue("File shouldn't be empty.", reportFile.length() > 0 );
+ // conversion to URL via FileUtils like in XMLResultAggregator, not as suggested in the bug report
+ URL reportUrl = new URL( FileUtils.getFileUtils().toURI(reportFile.getAbsolutePath()) );
+ InputStream reportStream = reportUrl.openStream();
+ assertTrue("This shouldn't be an empty stream.", reportStream.available() > 0);
+ }
+
+ @Test
+ public void testSpecialSignsInHtmlPath() throws Exception {
+ buildRule.executeTarget("testSpecialSignsInHtmlPath");
+ File reportFile = new File(buildRule.getOutputDir(), "html# $%\u00A7&-!report/index.html");
+ // tests one the file object
+ assertTrue("No index.html present. Not generated?", reportFile.exists() );
+ assertTrue("Cant read the report file.", reportFile.canRead() );
+ assertTrue("File shouldn't be empty.", reportFile.length() > 0 );
+ // conversion to URL via FileUtils like in XMLResultAggregator, not as suggested in the bug report
+ URL reportUrl = new URL( FileUtils.getFileUtils().toURI(reportFile.getAbsolutePath()) );
+ InputStream reportStream = reportUrl.openStream();
+ assertTrue("This shouldn't be an empty stream.", reportStream.available() > 0);
+ }
+
+ //Bugzilla Report 39708
+ @Test
+ public void testWithStyleFromDir() throws Exception {
+ buildRule.executeTarget("testWithStyleFromDir");
+ File reportFile = new File(buildRule.getOutputDir(), "html/index.html");
+ // tests one the file object
+ assertTrue("No index.html present. Not generated?", reportFile.exists() );
+ assertTrue("Cant read the report file.", reportFile.canRead() );
+ assertTrue("File shouldn't be empty.", reportFile.length() > 0 );
+ // conversion to URL via FileUtils like in XMLResultAggregator, not as suggested in the bug report
+ URL reportUrl = new URL( FileUtils.getFileUtils().toURI(reportFile.getAbsolutePath()) );
+ InputStream reportStream = reportUrl.openStream();
+ assertTrue("This shouldn't be an empty stream.", reportStream.available() > 0);
+ }
+
+ //Bugzilla Report 40021
+ @Test
+ public void testNoFrames() throws Exception {
+ buildRule.executeTarget("testNoFrames");
+ File reportFile = new File(buildRule.getOutputDir(), "html/junit-noframes.html");
+ // tests one the file object
+ assertTrue("No junit-noframes.html present. Not generated?", reportFile.exists() );
+ assertTrue("Cant read the report file.", reportFile.canRead() );
+ assertTrue("File shouldn't be empty.", reportFile.length() > 0 );
+ // conversion to URL via FileUtils like in XMLResultAggregator, not as suggested in the bug report
+ URL reportUrl = new URL( FileUtils.getFileUtils().toURI(reportFile.getAbsolutePath()) );
+ InputStream reportStream = reportUrl.openStream();
+ assertTrue("This shouldn't be an empty stream.", reportStream.available() > 0);
+ }
+ //Bugzilla Report 39708
+ @Test
+ public void testWithStyleFromDirAndXslImport() throws Exception {
+ buildRule.executeTarget("testWithStyleFromDirAndXslImport");
+ File reportFile = new File(buildRule.getOutputDir(), "html/index.html");
+ // tests one the file object
+ assertTrue("No index.html present. Not generated?", reportFile.exists() );
+ assertTrue("Cant read the report file.", reportFile.canRead() );
+ assertTrue("File shouldn't be empty.", reportFile.length() > 0 );
+ // conversion to URL via FileUtils like in XMLResultAggregator, not as suggested in the bug report
+ URL reportUrl = new URL( FileUtils.getFileUtils().toURI(reportFile.getAbsolutePath()) );
+ InputStream reportStream = reportUrl.openStream();
+ assertTrue("This shouldn't be an empty stream.", reportStream.available() > 0);
+ }
+
+ @Test
+ public void testWithStyleFromClasspath() throws Exception {
+ buildRule.executeTarget("testWithStyleFromClasspath");
+ File reportFile = new File(buildRule.getOutputDir(), "html/index.html");
+ // tests one the file object
+ assertTrue("No index.html present. Not generated?", reportFile.exists() );
+ assertTrue("Cant read the report file.", reportFile.canRead() );
+ assertTrue("File shouldn't be empty.", reportFile.length() > 0 );
+ // conversion to URL via FileUtils like in XMLResultAggregator, not as suggested in the bug report
+ URL reportUrl = new URL( FileUtils.getFileUtils().toURI(reportFile.getAbsolutePath()) );
+ InputStream reportStream = reportUrl.openStream();
+ assertTrue("This shouldn't be an empty stream.", reportStream.available() > 0);
+ }
+
+ @Test
+ public void testWithParams() throws Exception {
+ buildRule.executeTarget("testWithParams");
+ assertContains("key1=value1,key2=value2", buildRule.getLog());
+ File reportFile = new File(buildRule.getOutputDir(), "html/index.html");
+ // tests one the file object
+ assertTrue("No index.html present. Not generated?", reportFile.exists() );
+ assertTrue("Cant read the report file.", reportFile.canRead() );
+ assertTrue("File shouldn't be empty.", reportFile.length() > 0 );
+ // conversion to URL via FileUtils like in XMLResultAggregator, not as suggested in the bug report
+ URL reportUrl = new URL( FileUtils.getFileUtils().toURI(reportFile.getAbsolutePath()) );
+ InputStream reportStream = reportUrl.openStream();
+ assertTrue("This shouldn't be an empty stream.", reportStream.available() > 0);
+ }
+}