Author: markt
Date: Fri May 17 13:16:49 2013
New Revision: 1483787

URL: http://svn.apache.org/r1483787
Log:
More addition test cases

Modified:
    
tomcat/trunk/test/org/apache/catalina/startup/TestHostConfigAutomaticDeployment.java

Modified: 
tomcat/trunk/test/org/apache/catalina/startup/TestHostConfigAutomaticDeployment.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/test/org/apache/catalina/startup/TestHostConfigAutomaticDeployment.java?rev=1483787&r1=1483786&r2=1483787&view=diff
==============================================================================
--- 
tomcat/trunk/test/org/apache/catalina/startup/TestHostConfigAutomaticDeployment.java
 (original)
+++ 
tomcat/trunk/test/org/apache/catalina/startup/TestHostConfigAutomaticDeployment.java
 Fri May 17 13:16:49 2013
@@ -29,6 +29,7 @@ import org.junit.Assert;
 import org.junit.Test;
 
 import org.apache.catalina.Context;
+import org.apache.catalina.Host;
 import org.apache.catalina.Lifecycle;
 import org.apache.catalina.LifecycleEvent;
 import org.apache.catalina.LifecycleListener;
@@ -106,71 +107,60 @@ public class TestHostConfigAutomaticDepl
      */
     @Test
     public void testDeploymentXmlFFF() throws Exception {
-        initTestDeploymentXml();
+        createXmlInConfigBaseForAppbase();
         doTestDeployment(false, false, false,
                 LifecycleState.FAILED, XML_COOKIE_NAME, true, false, false);
     }
 
     @Test
     public void testDeploymentXmlFFT() throws Exception {
-        initTestDeploymentXml();
+        createXmlInConfigBaseForAppbase();
         doTestDeployment(false, false, true,
                 LifecycleState.FAILED, XML_COOKIE_NAME, true, false, false);
     }
 
     @Test
     public void testDeploymentXmlFTF() throws Exception {
-        initTestDeploymentXml();
+        createXmlInConfigBaseForAppbase();
         doTestDeployment(false, true, false,
                 LifecycleState.FAILED, XML_COOKIE_NAME, true, false, false);
     }
 
     @Test
     public void testDeploymentXmlFTT() throws Exception {
-        initTestDeploymentXml();
+        createXmlInConfigBaseForAppbase();
         doTestDeployment(false, true, true,
                 LifecycleState.FAILED, XML_COOKIE_NAME, true, false, false);
     }
 
     @Test
     public void testDeploymentXmlTFF() throws Exception {
-        initTestDeploymentXml();
+        createXmlInConfigBaseForAppbase();
         doTestDeployment(true, false, false,
                 LifecycleState.FAILED, XML_COOKIE_NAME, true, false, false);
     }
 
     @Test
     public void testDeploymentXmlTFT() throws Exception {
-        initTestDeploymentXml();
+        createXmlInConfigBaseForAppbase();
         doTestDeployment(true, false, true,
                 LifecycleState.FAILED, XML_COOKIE_NAME, true, false, false);
     }
 
     @Test
     public void testDeploymentXmlTTF() throws Exception {
-        initTestDeploymentXml();
+        createXmlInConfigBaseForAppbase();
         doTestDeployment(true, true, false,
                 LifecycleState.FAILED, XML_COOKIE_NAME, true, false, false);
     }
 
     @Test
     public void testDeploymentXmlTTT() throws Exception {
-        initTestDeploymentXml();
+        createXmlInConfigBaseForAppbase();
         doTestDeployment(true, true, true,
                 LifecycleState.FAILED, XML_COOKIE_NAME, true, false, false);
     }
 
-    private void initTestDeploymentXml() throws IOException {
-        File xml = new File(getTomcatInstance().getHost().getConfigBaseFile(),
-                APP_NAME + ".xml");
-        File parent = xml.getParentFile();
-        if (!parent.isDirectory()) {
-            Assert.assertTrue(parent.mkdirs());
-        }
-
-        Files.copy(XML_SOURCE.toPath(), xml.toPath());
-    }
-
 
     /*
      * Expected behaviour for deployment of an XML file that points to an
@@ -357,67 +347,60 @@ public class TestHostConfigAutomaticDepl
      */
     @Test
     public void testDeploymentWarXmlFFF() throws Exception {
-        initTestDeploymentWarXml();
+        createWarInAppbase(true);
         doTestDeployment(false, false, false,
                 LifecycleState.STARTED, null, false, true, false);
     }
 
     @Test
     public void testDeploymentWarXmlFFT() throws Exception {
-        initTestDeploymentWarXml();
+        createWarInAppbase(true);
         doTestDeployment(false, false, true,
                 LifecycleState.STARTED, null, false, true, true);
     }
 
     @Test
     public void testDeploymentWarXmlFTF() throws Exception {
-        initTestDeploymentWarXml();
+        createWarInAppbase(true);
         doTestDeployment(false, true, false,
                 LifecycleState.STARTED, null, false, true, false);
     }
 
     @Test
     public void testDeploymentWarXmlFTT() throws Exception {
-        initTestDeploymentWarXml();
+        createWarInAppbase(true);
         doTestDeployment(false, true, true,
                 LifecycleState.STARTED, null, false, true, true);
     }
 
     @Test
     public void testDeploymentWarXmlTFF() throws Exception {
-        initTestDeploymentWarXml();
+        createWarInAppbase(true);
         doTestDeployment(true, false, false,
                 LifecycleState.STARTED, WAR_COOKIE_NAME, false, true, false);
     }
 
     @Test
     public void testDeploymentWarXmlTFT() throws Exception {
-        initTestDeploymentWarXml();
+        createWarInAppbase(true);
         doTestDeployment(true, false, true,
                 LifecycleState.STARTED, WAR_COOKIE_NAME, false, true, true);
     }
 
     @Test
     public void testDeploymentWarXmlTTF() throws Exception {
-        initTestDeploymentWarXml();
+        createWarInAppbase(true);
         doTestDeployment(true, true, false,
                 LifecycleState.STARTED, WAR_COOKIE_NAME, true, true, false);
     }
 
     @Test
     public void testDeploymentWarXmlTTT() throws Exception {
-        initTestDeploymentWarXml();
+        createWarInAppbase(true);
         doTestDeployment(true, true, true,
                 LifecycleState.STARTED, WAR_COOKIE_NAME, true, true, true);
     }
 
-    private void initTestDeploymentWarXml() throws IOException {
-        // Copy the test WAR file to the appBase
-        File dest = new File(getTomcatInstance().getHost().getAppBaseFile(),
-                APP_NAME.getBaseName() + ".war");
-        Files.copy(WAR_XML_SOURCE.toPath(), dest.toPath());
-    }
-
 
     /*
      * Expected behaviour for deployment of a WAR without an embedded XML file.
@@ -427,67 +410,60 @@ public class TestHostConfigAutomaticDepl
      */
     @Test
     public void testDeploymentWarFFF() throws Exception {
-        initTestDeploymentWar();
+        createWarInAppbase(false);
         doTestDeployment(false, false, false,
                 LifecycleState.STARTED, null, false, true, false);
     }
 
     @Test
     public void testDeploymentWarFFT() throws Exception {
-        initTestDeploymentWar();
+        createWarInAppbase(false);
         doTestDeployment(false, false, true,
                 LifecycleState.STARTED, null, false, true, true);
     }
 
     @Test
     public void testDeploymentWarFTF() throws Exception {
-        initTestDeploymentWar();
+        createWarInAppbase(false);
         doTestDeployment(false, true, false,
                 LifecycleState.STARTED, null, false, true, false);
     }
 
     @Test
     public void testDeploymentWarFTT() throws Exception {
-        initTestDeploymentWar();
+        createWarInAppbase(false);
         doTestDeployment(false, true, true,
                 LifecycleState.STARTED, null, false, true, true);
     }
 
     @Test
     public void testDeploymentWarTFF() throws Exception {
-        initTestDeploymentWar();
+        createWarInAppbase(false);
         doTestDeployment(true, false, false,
                 LifecycleState.STARTED, null, false, true, false);
     }
 
     @Test
     public void testDeploymentWarTFT() throws Exception {
-        initTestDeploymentWar();
+        createWarInAppbase(false);
         doTestDeployment(true, false, true,
                 LifecycleState.STARTED, null, false, true, true);
     }
 
     @Test
     public void testDeploymentWarTTF() throws Exception {
-        initTestDeploymentWar();
+        createWarInAppbase(false);
         doTestDeployment(true, true, false,
                 LifecycleState.STARTED, null, false, true, false);
     }
 
     @Test
     public void testDeploymentWarTTT() throws Exception {
-        initTestDeploymentWar();
+        createWarInAppbase(false);
         doTestDeployment(true, true, true,
                 LifecycleState.STARTED, null, false, true, true);
     }
 
-    private void initTestDeploymentWar() throws IOException {
-        // Copy the test WAR file to the appBase
-        File dest = new File(getTomcatInstance().getHost().getAppBaseFile(),
-                APP_NAME.getBaseName() + ".war");
-        Files.copy(WAR_SOURCE.toPath(), dest.toPath());
-    }
-
 
     /*
      * Expected behaviour for deployment of a DIR with an embedded XML file.
@@ -857,12 +833,7 @@ public class TestHostConfigAutomaticDepl
         File dir = null;
 
         if (startXml && !startExternalWar && !startExternalDir) {
-            xml = new File(host.getConfigBaseFile(), APP_NAME + ".xml");
-            File parent = xml.getParentFile();
-            if (!parent.isDirectory()) {
-                Assert.assertTrue(parent.mkdirs());
-            }
-            Files.copy(XML_SOURCE.toPath(), xml.toPath());
+            xml = createXmlInConfigBaseForAppbase();
         }
         if (startExternalWar) {
             // Copy the test WAR file to the external directory
@@ -902,10 +873,7 @@ public class TestHostConfigAutomaticDepl
             }
         }
         if (startWar) {
-            // Copy the test WAR file to the appBase
-            war = new File(getTomcatInstance().getHost().getAppBaseFile(),
-                    APP_NAME.getBaseName() + ".war");
-            Files.copy(WAR_XML_SOURCE.toPath(), war.toPath());
+            war = createWarInAppbase(true);
         }
         if (startDir) {
             dir = createDirInAppbase(true);
@@ -1058,7 +1026,8 @@ public class TestHostConfigAutomaticDepl
     @Test
     public void testModifyXmlUpdateXml() throws Exception {
         doTestModify(true, false, false, false, false, XML,
-                true, false, false, XML_COOKIE_NAME, REDEPLOY);
+                true, false, false, XML_COOKIE_NAME, REDEPLOY,
+                LifecycleState.FAILED);
     }
 
     @Test
@@ -1150,6 +1119,16 @@ public class TestHostConfigAutomaticDepl
             int toModify, boolean resultXml, boolean resultWar,
             boolean resultDir, String resultCookieName, int resultAction)
             throws Exception {
+        doTestModify(startXml, startExternalWar, startExternalDir, startWar,
+                startDir, toModify, resultXml, resultWar, resultDir,
+                resultCookieName, resultAction, LifecycleState.STARTED);
+    }
+
+    private void doTestModify(boolean startXml, boolean startExternalWar,
+            boolean startExternalDir, boolean startWar, boolean startDir,
+            int toModify, boolean resultXml, boolean resultWar,
+            boolean resultDir, String resultCookieName, int resultAction,
+            LifecycleState resultState) throws Exception {
 
         Tomcat tomcat = getTomcatInstance();
         StandardHost host = (StandardHost) tomcat.getHost();
@@ -1161,12 +1140,7 @@ public class TestHostConfigAutomaticDepl
         File dir = null;
 
         if (startXml && !startExternalWar && !startExternalDir) {
-            xml = new File(host.getConfigBaseFile(), APP_NAME + ".xml");
-            File parent = xml.getParentFile();
-            if (!parent.isDirectory()) {
-                Assert.assertTrue(parent.mkdirs());
-            }
-            Files.copy(XML_SOURCE.toPath(), xml.toPath());
+            xml = createXmlInConfigBaseForAppbase();
         }
         if (startExternalWar) {
             // Copy the test WAR file to the external directory
@@ -1206,10 +1180,7 @@ public class TestHostConfigAutomaticDepl
             }
         }
         if (startWar) {
-            // Copy the test WAR file to the appBase
-            war = new File(getTomcatInstance().getHost().getAppBaseFile(),
-                    APP_NAME.getBaseName() + ".war");
-            Files.copy(WAR_XML_SOURCE.toPath(), war.toPath());
+            war = createWarInAppbase(true);
         }
         if (startDir) {
             dir = createDirInAppbase(true);
@@ -1309,6 +1280,7 @@ public class TestHostConfigAutomaticDepl
         if (newContext != null) {
             Assert.assertEquals(resultCookieName,
                     newContext.getSessionCookieName());
+            Assert.assertEquals(resultState, newContext.getState());
         }
 
         if (resultAction == NONE) {
@@ -1363,12 +1335,30 @@ public class TestHostConfigAutomaticDepl
      *   the previous bullet point.
      */
     @Test
-    public void testWarAddDir() throws Exception {
-        doTestAdd(false, false, false, true, false, DIR,
+    public void testAdditionWarAddDir() throws Exception {
+        doTestAddition(false, false, false, true, false, DIR,
                 false, true, true, WAR_COOKIE_NAME, NONE);
     }
 
-    private void doTestAdd(boolean startXml, boolean startExternalWar,
+    @Test
+    public void testAdditionDirAddWar() throws Exception {
+        doTestAddition(false, false, false, false, true, WAR,
+                false, true, true, WAR_COOKIE_NAME, REDEPLOY);
+    }
+
+    @Test
+    public void testAdditionXmlAddDir() throws Exception {
+        doTestAddition(true, false, false, false, false, DIR,
+                true, false, true, XML_COOKIE_NAME, NONE);
+    }
+
+    @Test
+    public void testAdditionDirAddXml() throws Exception {
+        doTestAddition(false, false, false, false, true, XML,
+                true, false, true, XML_COOKIE_NAME, REDEPLOY);
+    }
+
+    private void doTestAddition(boolean startXml, boolean startExternalWar,
             boolean startExternalDir, boolean startWar, boolean startDir,
             int toAdd, boolean resultXml, boolean resultWar,
             boolean resultDir, String resultCookieName, int resultAction)
@@ -1384,12 +1374,7 @@ public class TestHostConfigAutomaticDepl
         File dir = null;
 
         if (startXml && !startExternalWar && !startExternalDir) {
-            xml = new File(host.getConfigBaseFile(), APP_NAME + ".xml");
-            File parent = xml.getParentFile();
-            if (!parent.isDirectory()) {
-                Assert.assertTrue(parent.mkdirs());
-            }
-            Files.copy(XML_SOURCE.toPath(), xml.toPath());
+            xml = createXmlInConfigBaseForAppbase();
         }
         if (startExternalWar) {
             // Copy the test WAR file to the external directory
@@ -1429,10 +1414,7 @@ public class TestHostConfigAutomaticDepl
             }
         }
         if (startWar) {
-            // Copy the test WAR file to the appBase
-            war = new File(getTomcatInstance().getHost().getAppBaseFile(),
-                    APP_NAME.getBaseName() + ".war");
-            Files.copy(WAR_XML_SOURCE.toPath(), war.toPath());
+            war = createWarInAppbase(true);
         }
         if (startDir) {
             dir = createDirInAppbase(true);
@@ -1450,9 +1432,9 @@ public class TestHostConfigAutomaticDepl
         switch (toAdd) {
             case XML:
                 if (xml == null) {
-                    Assert.fail();
+                    xml = createXmlInConfigBaseForAppbase();
                 } else {
-                    xml.setLastModified(System.currentTimeMillis());
+                    Assert.fail();
                 }
                 break;
             case EXT:
@@ -1464,9 +1446,9 @@ public class TestHostConfigAutomaticDepl
                 break;
             case WAR:
                 if (war == null) {
-                    Assert.fail();
+                    war = createWarInAppbase(true);
                 } else {
-                    war.setLastModified(System.currentTimeMillis());
+                    Assert.fail();
                 }
                 break;
             case DIR:
@@ -1541,6 +1523,12 @@ public class TestHostConfigAutomaticDepl
             Assert.assertSame(oldContext, newContext);
             Assert.assertEquals("stopstart", tracker.getHistory());
         } else if (resultAction == REDEPLOY) {
+            if (newContext == null) {
+                Assert.fail();
+            } else {
+                Assert.assertEquals(
+                        LifecycleState.STARTED, newContext.getState());
+            }
             Assert.assertNotSame(oldContext, newContext);
             // No init or start as that will be in a new context object
             Assert.assertEquals("stopafter_destroy", tracker.getHistory());
@@ -1561,6 +1549,28 @@ public class TestHostConfigAutomaticDepl
         return dir;
     }
 
+    private File createWarInAppbase(boolean withXml) throws IOException {
+        File war = new File(getTomcatInstance().getHost().getAppBaseFile(),
+                APP_NAME.getBaseName() + ".war");
+        if (withXml) {
+            Files.copy(WAR_XML_SOURCE.toPath(), war.toPath());
+        } else {
+            Files.copy(WAR_SOURCE.toPath(), war.toPath());
+        }
+        return war;
+    }
+
+    private File createXmlInConfigBaseForAppbase() throws IOException {
+        Host host = getTomcatInstance().getHost();
+        File xml = new File(host.getConfigBaseFile(), APP_NAME + ".xml");
+        File parent = xml.getParentFile();
+        if (!parent.isDirectory()) {
+            Assert.assertTrue(parent.mkdirs());
+        }
+        Files.copy(XML_SOURCE.toPath(), xml.toPath());
+        return xml;
+    }
+
     private static void recurrsiveCopy(final Path src, final Path dest)
             throws IOException {
 



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to