diff options
| author | Andrew Branson <andrew.branson@cern.ch> | 2014-04-01 15:58:01 +0200 |
|---|---|---|
| committer | Andrew Branson <andrew.branson@cern.ch> | 2014-04-01 15:58:01 +0200 |
| commit | 5b9cc0f4318309879be677bb0278542217f6a0b5 (patch) | |
| tree | b2f5f62e701e26cbfd770542a4ca1162567c70e3 | |
| parent | 391c7935ae40f60672b88312b02151c3f941796e (diff) | |
AbstractMain - remove usage and help, fail if config or connect args are
missing or the files aren't found. Tests. Fixes #177
| -rw-r--r-- | src/test/java/LauncherTest.java | 74 | ||||
| -rw-r--r-- | src/test/java/MainTest.java | 2 | ||||
| -rw-r--r-- | src/test/resources/server.conf | 1 | ||||
| -rw-r--r-- | src/test/resources/test.clc | 16 |
4 files changed, 92 insertions, 1 deletions
diff --git a/src/test/java/LauncherTest.java b/src/test/java/LauncherTest.java new file mode 100644 index 0000000..39c2b6e --- /dev/null +++ b/src/test/java/LauncherTest.java @@ -0,0 +1,74 @@ +import java.util.Properties;
+
+import com.c2kernel.process.AbstractMain;
+import com.c2kernel.utils.Logger;
+
+
+public class LauncherTest {
+
+ String[] args;
+ Properties props;
+
+ public LauncherTest() {
+ }
+
+ private void standardArgs() {
+ args = new String[8];
+ args[0] = "-logLevel";
+ args[1] = "0";
+ args[2] = "-logFile";
+ args[3] = "log.txt";
+ args[4] = "-config";
+ args[5] = LauncherTest.class.getResource("server.conf").getPath();
+ args[6] = "-connect";
+ args[7] = LauncherTest.class.getResource("test.clc").getPath();
+ }
+
+ public void testValidC2KArgs() throws Exception {
+
+ standardArgs();
+ Logger.msg("Testing valid startup args");
+ props = AbstractMain.readC2KArgs(args);
+
+ assert "MemoryOnlyClusterStorage".equals(props.get("ClusterStorage"));
+ assert "1553".equals(props.get("ItemServer.Proxy.port"));
+ }
+
+ public void testWrongConfigFileName() throws Exception {
+ standardArgs();
+ args[5] = "filenotfound";
+ try {
+ props = AbstractMain.readC2KArgs(args);
+ throw new Exception("Invalid connect file not detected");
+ } catch (Exception ex) { }
+ }
+
+ public void testWrongConnectFileName() throws Exception {
+ standardArgs();
+ args[7] = "alsonotfound";
+ try {
+ props = AbstractMain.readC2KArgs(args);
+ throw new Exception("Invalid connect file not detected");
+ } catch (Exception ex) { }
+ }
+
+ public void testMissingConnectArg() throws Exception {
+ args = new String[2];
+ args[0] = "-config";
+ args[1] = LauncherTest.class.getResource("server.conf").getPath();
+ try {
+ props = AbstractMain.readC2KArgs(args);
+ throw new Exception("Missing connect file not detected");
+ } catch (Exception ex) { }
+ }
+
+ public void testMissingConfigArg() throws Exception {
+ args = new String[2];
+ args[0] = "-connect";
+ args[1] = LauncherTest.class.getResource("test.clc").getPath();
+ try {
+ props = AbstractMain.readC2KArgs(args);
+ throw new Exception("Missing config file not detected");
+ } catch (Exception ex) { }
+ }
+}
diff --git a/src/test/java/MainTest.java b/src/test/java/MainTest.java index 2029dc2..b0a179a 100644 --- a/src/test/java/MainTest.java +++ b/src/test/java/MainTest.java @@ -107,7 +107,7 @@ public class MainTest { assert result!=null;
assert result instanceof String;
assert ((String)result).equals("TestTest");
- }
+ } public void testStateMachine() throws Exception {
Logger.msg("Validating test state machine");
diff --git a/src/test/resources/server.conf b/src/test/resources/server.conf new file mode 100644 index 0000000..476aeb0 --- /dev/null +++ b/src/test/resources/server.conf @@ -0,0 +1 @@ +ClusterStorage=MemoryOnlyClusterStorage
\ No newline at end of file diff --git a/src/test/resources/test.clc b/src/test/resources/test.clc new file mode 100644 index 0000000..be1d5d0 --- /dev/null +++ b/src/test/resources/test.clc @@ -0,0 +1,16 @@ +
+Name=Test Cristal Server
+
+// TCP server ports
+ItemServer.name=localhost
+ItemServer.iiop=1500
+ItemServer.Proxy.port=1553
+
+// LDAP Lookup config
+LDAP.GlobalPath=o=cern,c=ch
+LDAP.RootPath=cn=cristal
+LDAP.LocalPath=cn=test
+LDAP.port=389
+LDAP.host=localhost
+LDAP.user=cn=Manager,o=cern,c=ch
+LDAP.password=test
|
