test/java/io/File/CreateNewFile.java
Print this page
@@ -1,7 +1,7 @@
/*
- * Copyright (c) 1998, 2001, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2013, Oracle and/or its affiliates. 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.
@@ -20,11 +20,11 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/* @test
- @bug 4130498 4391178
+ @bug 4130498 4391178 6198547
@summary Basic test for createNewFile method
*/
import java.io.*;
@@ -49,7 +49,22 @@
if (f.createNewFile())
throw new Exception("Created root directory!");
} catch (IOException e) {
// Exception expected
}
+
+ testCreateExistingDir();
+ }
+
+ // Test JDK-6198547
+ private static void testCreateExistingDir() throws IOException {
+ File tmpFile = new File("hugo");
+ if (tmpFile.exists() && !tmpFile.delete())
+ throw new RuntimeException("Cannot delete " + tmpFile);
+ if (!tmpFile.mkdir())
+ throw new RuntimeException("Cannot create dir " + tmpFile);
+ if (!tmpFile.exists())
+ throw new RuntimeException("Cannot see created dir " + tmpFile);
+ if (tmpFile.createNewFile())
+ throw new RuntimeException("Should fail to create file " + tmpFile);
}
}