Commit in servicemix/base/src/test on MAIN
java/org/servicemix/jbi/installation/ComponentAssemblyInstallationTest.java+116added 1.1
components/quartz-component-1.0-jbi-installer.zip[binary]added 1.1
          /logger-component-1.0-jbi-installer.zip[binary]added 1.1
assemblies/sample-jbi.zip[binary]added 1.1
+116
4 added files
Added example components/service assembly and test case using them

servicemix/base/src/test/java/org/servicemix/jbi/installation
ComponentAssemblyInstallationTest.java added at 1.1
diff -N ComponentAssemblyInstallationTest.java
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ ComponentAssemblyInstallationTest.java	11 Aug 2005 01:39:41 -0000	1.1
@@ -0,0 +1,116 @@
+/** 
+ * 
+ * Copyright 2005 Unity Systems, LLC. http://www.unity-systems.com
+ * 
+ * Licensed 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.servicemix.jbi.installation;
+
+import java.io.File;
+import java.net.URL;
+
+import junit.framework.TestCase;
+
+import org.servicemix.jbi.container.JBIContainer;
+
+/**
+ * 
+ * Tests the installation of a standard component, this is actual a dummy
+ * component that doesn't do anything though we are validating the parsing of
+ * the component descriptor and its deployment
+ * 
+ * @version $Revision: 1.1 $
+ */
+public class ComponentAssemblyInstallationTest extends TestCase {
+	protected JBIContainer container = new JBIContainer();
+
+	private File tempRootDir;
+
+	/*
+	 * @see TestCase#setUp()
+	 */
+	protected void setUp() throws Exception {
+		super.setUp();
+		container.setCreateMBeanServer(false);
+		container.setMonitorInstallationDirectory(false);
+		tempRootDir = File.createTempFile("servicemix", "rootDir");
+		tempRootDir.delete();
+		File tempTemp = new File(tempRootDir.getAbsolutePath() + "/temp");
+		if (!tempTemp.mkdirs())
+			fail("Unable to create temporary working root directory ["
+					+ tempTemp.getAbsolutePath() + "]");
+
+		System.out.println("Using temporary root directory ["
+				+ tempRootDir.getAbsolutePath() + "]");
+
+		container.setRootDir(tempRootDir.getAbsolutePath());
+		container.init();
+		container.start();
+
+	}
+
+	public void testInstallation() throws Exception {
+		try {
+			// Get the component
+			URL componentResource = getClass().getClassLoader().getResource(
+					"logger-component-1.0-jbi-installer.zip");
+			assertNotNull(
+					"The component JAR logger-component-1.0-jbi-installer is missing from the classpath",
+					componentResource);
+			container.installArchive(componentResource.toExternalForm());
+
+			// Get the component
+			componentResource = getClass().getClassLoader().getResource(
+					"quartz-component-1.0-jbi-installer.zip");
+			assertNotNull(
+					"The component JAR quartz-component-1.0-jbi-installer is missing from the classpath",
+					componentResource);
+			container.installArchive(componentResource.toExternalForm());
+
+			URL assemblyResource = getClass().getClassLoader().getResource(
+					"sample-jbi.zip");
+			assertNotNull(
+					"The assembly JAR sample-jbi.jar is missing from the classpath",
+					assemblyResource);
+			container.installArchive(assemblyResource.toExternalForm());
+			Thread.sleep(10000);
+		} catch (Exception e) {
+			e.printStackTrace();
+			fail(e.getMessage());
+		}
+	} /*
+		 * @see TestCase#tearDown()
+		 */
+
+	protected void tearDown() throws Exception {
+		super.tearDown();
+		container.shutDown();
+		deleteDir(tempRootDir);
+	}
+
+	public static boolean deleteDir(File dir) {
+		System.out.println("Deleting directory : " + dir.getAbsolutePath());
+		if (dir.isDirectory()) {
+			String[] children = dir.list();
+			for (int i = 0; i < children.length; i++) {
+				boolean success = deleteDir(new File(dir, children[i]));
+				if (!success) {
+					return false;
+				}
+			}
+		}
+		// The directory is now empty so delete it
+		return dir.delete();
+	}
+}
CVSspam 0.2.8



Reply via email to