Fixes build break - unit test expected non-existent dir to throw an exception

Review at http://gwt-code-reviews.appspot.com/1396802

Review by: pdr@google.com

git-svn-id: https://google-web-toolkit.googlecode.com/svn/trunk@9916 8db76d5a-ed1c-0410-87a9-c151d255dfc7
diff --git a/dev/core/test/com/google/gwt/dev/javac/PersistentUnitCacheTest.java b/dev/core/test/com/google/gwt/dev/javac/PersistentUnitCacheTest.java
index d34ce1b..0cdee86 100644
--- a/dev/core/test/com/google/gwt/dev/javac/PersistentUnitCacheTest.java
+++ b/dev/core/test/com/google/gwt/dev/javac/PersistentUnitCacheTest.java
@@ -38,14 +38,18 @@
     lastCacheDir = null;
   }
 
-  public void testBadDir() {
+  /**
+   * The cache should recursively create the directories it needs.
+   */
+  public void testNewDir() throws IOException, UnableToCompleteException {
     TreeLogger logger = TreeLogger.NULL;
-    File badDir = new File("sHoUlDnOtExi57");
-    try {
-      new PersistentUnitCache(logger, badDir);
-      fail("Expected an exception to be thrown");
-    } catch (UnableToCompleteException expected) {
-    }
+    File baseDir = File.createTempFile("PersistentUnitTest-newDir", "");
+    assertNotNull(baseDir);
+    assertTrue(baseDir.exists());
+    assertTrue(baseDir.delete());
+    File newDir = lastCacheDir = new File(baseDir, "sHoUlDnOtExi57");
+    new PersistentUnitCache(logger, newDir);
+    assertTrue(newDir.isDirectory());
   }
 
   /**
@@ -55,6 +59,8 @@
   public void testFileInTheWay() throws IOException {
     TreeLogger logger = TreeLogger.NULL;
     File fileInTheWay = File.createTempFile("PersistentUnitTest-inTheWay", "");
+    assertNotNull(fileInTheWay);
+    assertTrue(fileInTheWay.exists());
     fileInTheWay.deleteOnExit();
     try {
       new PersistentUnitCache(logger, fileInTheWay);