From 8502aa711e9145bfdb15594144b07cb4cbea8ada Mon Sep 17 00:00:00 2001
From: kenneth_suter <kenneth_suter@localhost>
Date: Thu, 14 Jun 2007 20:00:21 +0000
Subject: [PATCH] installation tests
---
opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/quicksetup/InstallationTest.java | 603 ++++++++++++++++++++++++++++++------------------------
opendj-sdk/opends/src/quicksetup/org/opends/quicksetup/Installation.java | 19 +
2 files changed, 350 insertions(+), 272 deletions(-)
diff --git a/opendj-sdk/opends/src/quicksetup/org/opends/quicksetup/Installation.java b/opendj-sdk/opends/src/quicksetup/org/opends/quicksetup/Installation.java
index c49c92d..8762705 100644
--- a/opendj-sdk/opends/src/quicksetup/org/opends/quicksetup/Installation.java
+++ b/opendj-sdk/opends/src/quicksetup/org/opends/quicksetup/Installation.java
@@ -213,6 +213,17 @@
public static final String LDIF_DIFF = "ldif-diff";
/**
+ * Directories required to be present for this installation
+ * to be considered valid.
+ */
+ public static final String[] REQUIRED_DIRECTORIES =
+ new String[] {
+ CONFIG_PATH_RELATIVE,
+ DATABASES_PATH_RELATIVE,
+ LIBRARIES_PATH_RELATIVE
+ };
+
+ /**
* Performs validation on the specified file to make sure that it is
* an actual OpenDS installation.
* @param rootDirectory File directory candidate
@@ -236,13 +247,7 @@
String[] children = rootDirectory.list();
if (children != null) {
Set<String> childrenSet = new HashSet<String>(Arrays.asList(children));
- String[] dirsToCheck = new String[] {
- CONFIG_PATH_RELATIVE,
- DATABASES_PATH_RELATIVE,
- LIBRARIES_PATH_RELATIVE,
- // perhaps we should check more
- };
- for (String dir : dirsToCheck) {
+ for (String dir : REQUIRED_DIRECTORIES) {
if (!childrenSet.contains(dir)) {
failureReason = getMsg("error-install-root-dir-no-dir",
Utils.getPath(rootDirectory), dir);
diff --git a/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/quicksetup/InstallationTest.java b/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/quicksetup/InstallationTest.java
index 09d7356..eaec389 100644
--- a/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/quicksetup/InstallationTest.java
+++ b/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/quicksetup/InstallationTest.java
@@ -28,279 +28,352 @@
package org.opends.quicksetup;
import org.testng.annotations.*;
+import static org.testng.Assert.*;
+
+import java.io.File;
+import java.io.IOException;
/**
* Installation Tester.
- *
*/
-@Test(groups = { "slow" })
-public class InstallationTest extends QuickSetupTestCase
-{
- Installation installation;
+@Test(groups = {"slow"})
+public class InstallationTest extends QuickSetupTestCase {
+ Installation installation;
- @BeforeClass
- public void setUp() throws Exception {
- Utils.extractServer();
- installation = new Installation(Utils.getQuickSetupTestServerRootDir());
+ @BeforeClass
+ public void setUp() throws Exception {
+ Utils.extractServer();
+ installation = new Installation(Utils.getQuickSetupTestServerRootDir());
+ }
+
+ /**
+ * Tests to make sure installation is valid.
+ */
+ @Test
+ public void testValidateRootDirectory() {
+ Installation.validateRootDirectory(Utils.getQuickSetupTestServerRootDir());
+ }
+
+ /**
+ * Tests that installation root directory is available.
+ */
+ @Test
+ public void testGetRootDirectory() {
+ assertNotNull(installation.getRootDirectory());
+ }
+
+ /**
+ * Tests that the installation root directory can be set.
+ */
+ @Test
+ public void testSetRootDirectory() {
+ File root = installation.getRootDirectory();
+ installation.setRootDirectory(root);
+ }
+
+ /**
+ * Tests that the installation root is valid.
+ */
+ @Test
+ public void testIsValid() {
+ assertTrue(installation.isValid());
+ }
+
+ /**
+ * Tests that an installation directory missing required directories
+ * is considered invalid.
+ */
+ @Test
+ public void testIsValid2() {
+ assertTrue(installation.isValid());
+ File x = new File(installation.getRootDirectory(), "x");
+ for (String reqDirName : Installation.REQUIRED_DIRECTORIES) {
+ File reqDir = new File(installation.getRootDirectory(), reqDirName);
+ try {
+ assertTrue(reqDir.renameTo(x));
+ assertFalse(installation.isValid());
+ assertNotNull(installation.getInvalidityReason());
+ } finally {
+ x.renameTo(reqDir);
+ }
}
+ }
- @Test
- public void testValidateRootDirectory()
- {
- Installation.validateRootDirectory(Utils.getQuickSetupTestServerRootDir());
+ /**
+ * Tests the configuration is available.
+ */
+ @Test
+ public void testGetCurrentConfiguration() {
+ assertNotNull(installation.getCurrentConfiguration());
+ }
+
+ /**
+ * Tests the base configuration is available.
+ */
+ @Test
+ public void testGetBaseConfiguration() throws ApplicationException {
+ assertNotNull(installation.getBaseConfiguration());
+ }
+
+ /**
+ * Tests the status is available.
+ */
+ @Test
+ public void testGetStatus() {
+ assertNotNull(installation.getStatus());
+ }
+
+ /**
+ * Tests the lib directory is available.
+ */
+ @Test
+ public void testGetLibrariesDirectory() {
+ assertExistentFile(installation.getLibrariesDirectory());
+ }
+
+ /**
+ * Tests the schema concat file is available.
+ */
+ @Test
+ public void testGetSchemaConcatFile() {
+ assertNonexistentFile(installation.getSchemaConcatFile());
+ }
+
+ /**
+ * Tests the base schema file is available.
+ */
+ @Test
+ public void testGetBaseSchemaFile() throws ApplicationException {
+ assertExistentFile(installation.getBaseSchemaFile());
+ }
+
+ /**
+ * Tests the base config file is available.
+ */
+ @Test
+ public void testGetBaseConfigurationFile() throws ApplicationException {
+ assertExistentFile(installation.getBaseConfigurationFile());
+ }
+
+ /**
+ * Tests the SVN rev number is discernable.
+ */
+ @Test
+ public void testGetSvnRev() throws ApplicationException {
+ assertNotNull(installation.getSvnRev());
+ }
+
+ /**
+ * Tests the config file is available.
+ */
+ @Test
+ public void testGetCurrentConfigurationFile() {
+ assertExistentFile(installation.getCurrentConfigurationFile());
+ }
+
+ /**
+ * Tests the bin/bat directory is available and platform appropriate.
+ */
+ @Test
+ public void testGetBinariesDirectory() {
+ File binariesDir;
+ assertExistentFile(binariesDir = installation.getBinariesDirectory());
+ if (File.separator.equals("\\")) {
+ assertTrue(binariesDir.getName().endsWith(
+ Installation.WINDOWS_BINARIES_PATH_RELATIVE));
+ } else {
+ assertTrue(binariesDir.getName().endsWith(
+ Installation.UNIX_BINARIES_PATH_RELATIVE));
}
+ }
-//
-// @Test
-// public void testGetRootDirectory()
-// {
-// //TODO: Test goes here...
-// assert false : "testGetRootDirectory not implemented.";
-// }
-//
-// @Test
-// public void testSetRootDirectory()
-// {
-// //TODO: Test goes here...
-// assert false : "testSetRootDirectory not implemented.";
-// }
-//
-// @Test
-// public void testIsValid()
-// {
-// //TODO: Test goes here...
-// assert false : "testIsValid not implemented.";
-// }
-//
-// @Test
-// public void testGetInvalidityReason()
-// {
-// //TODO: Test goes here...
-// assert false : "testGetInvalidityReason not implemented.";
-// }
-//
-// @Test
-// public void testGetCurrentConfiguration()
-// {
-// //TODO: Test goes here...
-// assert false : "testGetCurrentConfiguration not implemented.";
-// }
-//
-// @Test
-// public void testGetBaseConfiguration()
-// {
-// //TODO: Test goes here...
-// assert false : "testGetBaseConfiguration not implemented.";
-// }
-//
-// @Test
-// public void testGetStatus()
-// {
-// //TODO: Test goes here...
-// assert false : "testGetStatus not implemented.";
-// }
-//
-// @Test
-// public void testGetLibrariesDirectory()
-// {
-// //TODO: Test goes here...
-// assert false : "testGetLibrariesDirectory not implemented.";
-// }
-//
-// @Test
-// public void testGetSchemaConcatFile()
-// {
-// //TODO: Test goes here...
-// assert false : "testGetSchemaConcatFile not implemented.";
-// }
-//
-// @Test
-// public void testGetBaseSchemaFile()
-// {
-// //TODO: Test goes here...
-// assert false : "testGetBaseSchemaFile not implemented.";
-// }
-//
-// @Test
-// public void testGetBaseConfigurationFile()
-// {
-// //TODO: Test goes here...
-// assert false : "testGetBaseConfigurationFile not implemented.";
-// }
-//
-// @Test
-// public void testGetSvnRev()
-// {
-// //TODO: Test goes here...
-// assert false : "testGetSvnRev not implemented.";
-// }
-//
-// @Test
-// public void testGetCurrentConfigurationFile()
-// {
-// //TODO: Test goes here...
-// assert false : "testGetCurrentConfigurationFile not implemented.";
-// }
-//
-// @Test
-// public void testGetBinariesDirectory()
-// {
-// //TODO: Test goes here...
-// assert false : "testGetBinariesDirectory not implemented.";
-// }
-//
-// @Test
-// public void testGetDatabasesDirectory()
-// {
-// //TODO: Test goes here...
-// assert false : "testGetDatabasesDirectory not implemented.";
-// }
-//
-// @Test
-// public void testGetBackupDirectory()
-// {
-// //TODO: Test goes here...
-// assert false : "testGetBackupDirectory not implemented.";
-// }
-//
-// @Test
-// public void testGetConfigurationDirectory()
-// {
-// //TODO: Test goes here...
-// assert false : "testGetConfigurationDirectory not implemented.";
-// }
-//
-// @Test
-// public void testGetLogsDirectory()
-// {
-// //TODO: Test goes here...
-// assert false : "testGetLogsDirectory not implemented.";
-// }
-//
-// @Test
-// public void testGetLocksDirectory()
-// {
-// //TODO: Test goes here...
-// assert false : "testGetLocksDirectory not implemented.";
-// }
-//
-// @Test
-// public void testGetTemporaryDirectory()
-// {
-// //TODO: Test goes here...
-// assert false : "testGetTemporaryDirectory not implemented.";
-// }
-//
-// @Test
-// public void testGetHistoryDirectory()
-// {
-// //TODO: Test goes here...
-// assert false : "testGetHistoryDirectory not implemented.";
-// }
-//
-// @Test
-// public void testCreateHistoryBackupDirectory()
-// {
-// //TODO: Test goes here...
-// assert false : "testCreateHistoryBackupDirectory not implemented.";
-// }
-//
-// @Test
-// public void testGetHistoryLogFile()
-// {
-// //TODO: Test goes here...
-// assert false : "testGetHistoryLogFile not implemented.";
-// }
-//
-// @Test
-// public void testGetConfigurationUpgradeDirectory()
-// {
-// //TODO: Test goes here...
-// assert false : "testGetConfigurationUpgradeDirectory not implemented.";
-// }
-//
-// @Test
-// public void testGetTemporaryUpgradeDirectory()
-// {
-// //TODO: Test goes here...
-// assert false : "testGetTemporaryUpgradeDirectory not implemented.";
-// }
-//
-// @Test
-// public void testGetCommandFile()
-// {
-// //TODO: Test goes here...
-// assert false : "testGetCommandFile not implemented.";
-// }
-//
-// @Test
-// public void testGetServerStartCommandFile()
-// {
-// //TODO: Test goes here...
-// assert false : "testGetServerStartCommandFile not implemented.";
-// }
-//
-// @Test
-// public void testGetServerStopCommandFile()
-// {
-// //TODO: Test goes here...
-// assert false : "testGetServerStopCommandFile not implemented.";
-// }
-//
-// @Test
-// public void testGetLdifDirectory()
-// {
-// //TODO: Test goes here...
-// assert false : "testGetLdifDirectory not implemented.";
-// }
-//
-// @Test
-// public void testGetQuicksetupJarFile()
-// {
-// //TODO: Test goes here...
-// assert false : "testGetQuicksetupJarFile not implemented.";
-// }
-//
-// @Test
-// public void testGetOpenDSJarFile()
-// {
-// //TODO: Test goes here...
-// assert false : "testGetOpenDSJarFile not implemented.";
-// }
-//
-// @Test
-// public void testGetUninstallBatFile()
-// {
-// //TODO: Test goes here...
-// assert false : "testGetUninstallBatFile not implemented.";
-// }
-//
-// @Test
-// public void testGetStatusPanelCommandFile()
-// {
-// //TODO: Test goes here...
-// assert false : "testGetStatusPanelCommandFile not implemented.";
-// }
-//
-// @Test
-// public void testGetBuildInformation()
-// {
-// //TODO: Test goes here...
-// assert false : "testGetBuildInformation not implemented.";
-// }
-//
-// @Test
-// public void testGetBuildInformation1()
-// {
-// //TODO: Test goes here...
-// assert false : "testGetBuildInformation1 not implemented.";
-// }
-//
-// @Test
-// public void testToString()
-// {
-// //TODO: Test goes here...
-// assert false : "testToString not implemented.";
-// }
+ /**
+ * Tests the db directory is available.
+ */
+ @Test
+ public void testGetDatabasesDirectory() {
+ assertExistentFile(installation.getDatabasesDirectory());
+ }
+
+ /**
+ * Tests the backup directory is available.
+ */
+ @Test
+ public void testGetBackupDirectory() {
+ assertExistentFile(installation.getBackupDirectory());
+ }
+
+ /**
+ * Tests the config directory is available.
+ */
+ @Test
+ public void testGetConfigurationDirectory() {
+ assertExistentFile(installation.getConfigurationDirectory());
+ }
+
+ /**
+ * Tests the logs directory is available.
+ */
+ @Test
+ public void testGetLogsDirectory() {
+ assertExistentFile(installation.getLogsDirectory());
+ }
+
+ /**
+ * Tests the locks directory is available.
+ */
+ @Test
+ public void testGetLocksDirectory() {
+ assertExistentFile(installation.getLocksDirectory());
+ }
+
+ /**
+ * Tests the tmp directory is available.
+ */
+ @Test
+ public void testGetTemporaryDirectory() {
+ assertNonexistentFile(installation.getTemporaryDirectory());
+ }
+
+ /**
+ * Tests the history directory is available.
+ */
+ @Test
+ public void testGetHistoryDirectory() {
+ assertExistentFile(installation.getHistoryDirectory());
+ }
+
+ /**
+ * Tests a historical backup directory can be created.
+ */
+ @Test
+ public void testCreateHistoryBackupDirectory() throws IOException {
+ assertExistentFile(installation.createHistoryBackupDirectory());
+ assertExistentFile(installation.getHistoryDirectory());
+ assertTrue(installation.getHistoryDirectory().exists());
+ }
+
+ /**
+ * Tests the history log file is available.
+ */
+ @Test
+ public void testGetHistoryLogFile() {
+ assertNonexistentFile(installation.getHistoryLogFile());
+ }
+
+ /**
+ * Tests the config upgrade directory is available.
+ */
+ @Test
+ public void testGetConfigurationUpgradeDirectory() {
+ assertExistentFile(installation.getConfigurationUpgradeDirectory());
+ }
+
+ /**
+ * Tests the tmp/upgrade directory is available.
+ */
+ @Test
+ public void testGetTemporaryUpgradeDirectory() {
+ assertNonexistentFile(installation.getTemporaryUpgradeDirectory());
+ }
+
+ /**
+ * Tests getting a command file works.
+ */
+ @Test
+ public void testGetCommandFile() {
+ assertExistentFile(installation.getCommandFile(
+ Installation.UNIX_START_FILE_NAME));
+ }
+
+ /**
+ * Tests the start server command is available.
+ */
+ @Test
+ public void testGetServerStartCommandFile() {
+ assertExistentFile(installation.getServerStartCommandFile());
+ }
+
+ /**
+ * Tests the stop server command is available.
+ */
+ @Test
+ public void testGetServerStopCommandFile() {
+ assertExistentFile(installation.getServerStopCommandFile());
+ }
+
+ /**
+ * Tests the ldif directory is available.
+ */
+ @Test
+ public void testGetLdifDirectory() {
+ assertExistentFile(installation.getLdifDirectory());
+ }
+
+ /**
+ * Tests the quicksetup jar is available.
+ */
+ @Test
+ public void testGetQuicksetupJarFile() {
+ assertExistentFile(installation.getQuicksetupJarFile());
+ }
+
+ /**
+ * Tests the OpenDS jar is available.
+ */
+ @Test
+ public void testGetOpenDSJarFile() {
+ assertExistentFile(installation.getOpenDSJarFile());
+ }
+
+ /**
+ * Tests the uninstall file is available.
+ */
+ @Test
+ public void testGetUninstallBatFile() {
+ assertExistentFile(installation.getUninstallBatFile());
+ }
+
+ /**
+ * Tests the status panel command file is available.
+ */
+ @Test
+ public void testGetStatusPanelCommandFile() {
+ assertExistentFile(installation.getStatusPanelCommandFile());
+ }
+
+ /**
+ * Tests the build information is discernable.
+ */
+ @Test
+ public void testGetBuildInformation() throws ApplicationException {
+ assertNotNull(installation.getBuildInformation());
+ }
+
+ /**
+ * Tests the build information is discernable.
+ */
+ @Test
+ public void testGetBuildInformation1() throws ApplicationException {
+ assertNotNull(installation.getBuildInformation(true));
+ assertNotNull(installation.getBuildInformation(false));
+ }
+
+ /**
+ * Test string representation is possible.
+ */
+ @Test
+ public void testToString() {
+ assertNotNull(installation.toString());
+ }
+
+ private void assertExistentFile(File f) {
+ assertNotNull(f);
+ assertTrue(f.exists());
+ }
+
+ private void assertNonexistentFile(File f) {
+ assertNotNull(f);
+ }
}
--
Gitblit v1.10.0