langtools/test/com/sun/javadoc/testDocFileDir/TestDocFileDir.java
changeset 10 06bc494ca11e
child 5520 86e4b9a9da40
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/langtools/test/com/sun/javadoc/testDocFileDir/TestDocFileDir.java	Sat Dec 01 00:00:00 2007 +0000
@@ -0,0 +1,124 @@
+/*
+ * Copyright 2002-2004 Sun Microsystems, Inc.  All Rights Reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
+ * CA 95054 USA or visit www.sun.com if you need additional information or
+ * have any questions.
+ */
+
+import java.io.File;
+
+/*
+ * @test
+ * @bug 4258405 4973606
+ * @summary This test verifies that the doc-file directory does not
+ *          get overwritten when the sourcepath is equal to the destination
+ *          directory.
+ *          Also test that -docfilessubdirs and -excludedocfilessubdir both work.
+ * @author jamieh
+ * @library ../lib/
+ * @build JavadocTester
+ * @build TestDocFileDir
+ * @run main TestDocFileDir
+ */
+
+public class TestDocFileDir extends JavadocTester {
+
+    private static final String BUG_ID = "4258405-4973606";
+
+    private static final String[][] TEST1 = {
+        {BUG_ID + "-1" + FS + "pkg" + FS + "doc-files" + FS + "testfile.txt",
+            "This doc file did not get trashed."}
+        };
+    private static final String[][] NEGATED_TEST1 = NO_TEST;
+
+    private static final String[][] TEST2 = {
+        {BUG_ID + "-2" + FS + "pkg" + FS + "doc-files" + FS + "subdir-used1" +
+            FS + "testfile.txt",
+            "passed"
+        },
+        {BUG_ID + "-2" + FS + "pkg" + FS + "doc-files" + FS + "subdir-used2" +
+            FS + "testfile.txt",
+            "passed"
+        },
+    };
+    private static final String[][] NEGATED_TEST2 = {
+        {BUG_ID + "-2" + FS + "pkg" + FS + "doc-files" + FS + "subdir-excluded1" +
+            FS + "testfile.txt",
+            "passed"
+        },
+        {BUG_ID + "-2" + FS + "pkg" + FS + "doc-files" + FS + "subdir-excluded2" +
+            FS + "testfile.txt",
+            "passed"
+        },
+    };
+
+    private static final String[][] TEST0 = {
+        {"pkg" + FS + "doc-files" + FS + "testfile.txt",
+            "This doc file did not get trashed."}
+        };
+    private static final String[][] NEGATED_TEST0 = {};
+
+    //Output dir = Input Dir
+    private static final String[] ARGS1 =
+        new String[] {
+            "-d", BUG_ID + "-1", "-sourcepath",
+            "blah" + String.valueOf(File.pathSeparatorChar) +
+                BUG_ID + "-1" + String.valueOf(File.pathSeparatorChar) +
+                "blah", "pkg"};
+
+    //Exercising -docfilessubdirs and -excludedocfilessubdir
+    private static final String[] ARGS2 =
+        new String[] {
+            "-d", BUG_ID + "-2", "-sourcepath", SRC_DIR,
+            "-docfilessubdirs", "-excludedocfilessubdir",
+            "subdir-excluded1:subdir-excluded2", "pkg"};
+
+    //Output dir = "", Input dir = ""
+    private static final String[] ARGS0 =
+        new String[] {"pkg" + FS + "C.java"};
+
+
+    /**
+     * The entry point of the test.
+     * @param args the array of command line arguments.
+     */
+    public static void main(String[] args) {
+        TestDocFileDir tester = new TestDocFileDir();
+        copyDir(SRC_DIR + FS + "pkg", ".");
+        run(tester, ARGS0, TEST0, NEGATED_TEST0);
+        copyDir(SRC_DIR + FS + "pkg", BUG_ID + "-1");
+        run(tester, ARGS1, TEST1, NEGATED_TEST1);
+        run(tester, ARGS2, TEST2, NEGATED_TEST2);
+        tester.printSummary();
+    }
+
+    /**
+     * {@inheritDoc}
+     */
+    public String getBugId() {
+        return BUG_ID;
+    }
+
+    /**
+     * {@inheritDoc}
+     */
+    public String getBugName() {
+        return getClass().getName();
+    }
+}