Index: /trunk/JavaHelperLibTest/src/de/ugoe/cs/util/console/TestAll.java
===================================================================
--- /trunk/JavaHelperLibTest/src/de/ugoe/cs/util/console/TestAll.java	(revision 322)
+++ /trunk/JavaHelperLibTest/src/de/ugoe/cs/util/console/TestAll.java	(revision 323)
@@ -10,7 +10,6 @@
  * package.
  *
- * @generatedBy CodePro at 10/7/11 8:17 PM
- * @author sherbold
- * @version $Revision: 1.0 $
+ * @author Steffen Herbold
+ * @version 1.0
  */
 @RunWith(Suite.class)
@@ -20,15 +19,9 @@
 	TextConsoleTest.class,
 	ConsoleTest.class,
-	CommandExecuterTest.class
+	CommandExecuterTest.class,
+	de.ugoe.cs.util.console.defaultcommands.TestAll.class
 })
 public class TestAll {
 
-	/**
-	 * Launch the test.
-	 *
-	 * @param args the command line arguments
-	 *
-	 * @generatedBy CodePro at 10/7/11 8:17 PM
-	 */
 	public static void main(String[] args) {
 		JUnitCore.runClasses(new Class[] { TestAll.class });
Index: /trunk/JavaHelperLibTest/src/de/ugoe/cs/util/console/defaultcommands/CMDexecTest.java
===================================================================
--- /trunk/JavaHelperLibTest/src/de/ugoe/cs/util/console/defaultcommands/CMDexecTest.java	(revision 323)
+++ /trunk/JavaHelperLibTest/src/de/ugoe/cs/util/console/defaultcommands/CMDexecTest.java	(revision 323)
@@ -0,0 +1,115 @@
+package de.ugoe.cs.util.console.defaultcommands;
+
+import java.util.ArrayList;
+import java.util.List;
+import org.junit.*;
+
+import de.ugoe.cs.util.console.Console;
+import de.ugoe.cs.util.console.mock.MockCommandListener;
+import de.ugoe.cs.util.console.mock.MockOutputListener;
+import de.ugoe.cs.util.console.mock.MockTraceListener;
+import static org.junit.Assert.*;
+
+/**
+ * The class <code>CMDexecTest</code> contains tests for the class
+ * <code>{@link CMDexec}</code>.
+ * 
+ * @author Steffen Herbold
+ * @version 1.0
+ */
+public class CMDexecTest {
+
+	final static String ENDLINE = System.getProperty("line.separator");
+
+	@Test
+	public void testHelp_1() throws Exception {
+		CMDexec fixture = new CMDexec();
+		MockOutputListener mockListener = new MockOutputListener();
+		Console.getInstance().registerOutputListener(mockListener);
+		String expected = "Usage: exec <filename>" + ENDLINE;
+
+		fixture.help();
+
+		assertEquals(expected, mockListener.getLastOutput());
+	}
+
+	@Test
+	public void testRun_1() throws Exception {
+		CMDexec fixture = new CMDexec();
+		MockCommandListener mockCommandListener = new MockCommandListener();
+		MockTraceListener mockTraceListener = new MockTraceListener();
+		Console.getInstance().registerCommandListener(mockCommandListener);
+		Console.getInstance().registerTraceListener(mockTraceListener);
+		List<Object> parameters = new ArrayList<Object>();
+		parameters
+				.add("testdata/de.ugoe.cs.util.console.defaultcommands.CMDexecTest/script1");
+		String expected = "mockCommand";
+
+		fixture.run(parameters);
+
+		assertEquals(expected, mockCommandListener.getLastCommand());
+		assertEquals(expected + ENDLINE, mockTraceListener.getLastTrace());
+	}
+
+	@Test
+	public void testRun_2() throws Exception {
+		CMDexec fixture = new CMDexec();
+		MockCommandListener mockCommandListener = new MockCommandListener();
+		MockTraceListener mockTraceListener = new MockTraceListener();
+		Console.getInstance().registerCommandListener(mockCommandListener);
+		Console.getInstance().registerTraceListener(mockTraceListener);
+		List<Object> parameters = new ArrayList<Object>();
+		parameters
+				.add("testdata/de.ugoe.cs.util.console.defaultcommands.CMDexecTest/script2");
+		String expected = "mockCommand param1";
+
+		fixture.run(parameters);
+
+		assertEquals(expected, mockCommandListener.getLastCommand());
+		assertEquals(expected + ENDLINE, mockTraceListener.getLastTrace());
+	}
+
+	@Test(expected = java.security.InvalidParameterException.class)
+	public void testRun_3() throws Exception {
+		CMDexec fixture = new CMDexec();
+		MockCommandListener mockCommandListener = new MockCommandListener();
+		MockTraceListener mockTraceListener = new MockTraceListener();
+		Console.getInstance().registerCommandListener(mockCommandListener);
+		Console.getInstance().registerTraceListener(mockTraceListener);
+		List<Object> parameters = new ArrayList<Object>();
+
+		fixture.run(parameters);
+	}
+
+	@Test
+	public void testRun_4() throws Exception {
+		CMDexec fixture = new CMDexec();
+		MockCommandListener mockCommandListener = new MockCommandListener();
+		MockTraceListener mockTraceListener = new MockTraceListener();
+		Console.getInstance().registerCommandListener(mockCommandListener);
+		Console.getInstance().registerTraceListener(mockTraceListener);
+		List<Object> parameters = new ArrayList<Object>();
+		parameters
+				.add("testdata/de.ugoe.cs.util.console.defaultcommands.CMDexecTest/script2");
+		parameters.add(Integer.parseInt("1"));
+		String expected = "mockCommand param1";
+
+		fixture.run(parameters);
+
+		assertEquals(expected, mockCommandListener.getLastCommand());
+		assertEquals(expected + ENDLINE, mockTraceListener.getLastTrace());
+	}
+
+	@Test(expected = java.security.InvalidParameterException.class)
+	public void testRun_5() throws Exception {
+		CMDexec fixture = new CMDexec();
+		List<Object> parameters = new ArrayList<Object>();
+		parameters.add(Integer.parseInt("1"));
+
+		fixture.run(parameters);
+	}
+
+	public static void main(String[] args) {
+		new org.junit.runner.JUnitCore().run(CMDexecTest.class);
+	}
+}
Index: /trunk/JavaHelperLibTest/src/de/ugoe/cs/util/console/defaultcommands/CMDexitTest.java
===================================================================
--- /trunk/JavaHelperLibTest/src/de/ugoe/cs/util/console/defaultcommands/CMDexitTest.java	(revision 323)
+++ /trunk/JavaHelperLibTest/src/de/ugoe/cs/util/console/defaultcommands/CMDexitTest.java	(revision 323)
@@ -0,0 +1,87 @@
+package de.ugoe.cs.util.console.defaultcommands;
+
+import java.security.Permission;
+import java.util.ArrayList;
+import java.util.List;
+import org.junit.*;
+
+import de.ugoe.cs.util.console.Console;
+import de.ugoe.cs.util.console.mock.MockOutputListener;
+import static org.junit.Assert.*;
+
+/**
+ * The class <code>CMDexitTest</code> contains tests for the class
+ * <code>{@link CMDexit}</code>.
+ * 
+ * @author Steffen Herbold
+ * @version 1.0
+ */
+public class CMDexitTest {
+
+	final static String ENDLINE = System.getProperty("line.separator");
+
+	private static class ExitException extends SecurityException {
+		private static final long serialVersionUID = 1L;
+	}
+
+	private static class NoExitSecurityManager extends SecurityManager {
+		@Override
+		public void checkPermission(Permission perm) {
+			// allow anything.
+		}
+
+		@Override
+		public void checkPermission(Permission perm, Object context) {
+			// allow anything.
+		}
+
+		@Override
+		public void checkExit(int status) {
+			super.checkExit(status);
+			throw new ExitException();
+		}
+	}
+
+	@Test
+	public void testHelp_1() throws Exception {
+		CMDexit fixture = new CMDexit();
+		MockOutputListener mockListener = new MockOutputListener();
+		Console.getInstance().registerOutputListener(mockListener);
+		String expected = "Usage: exit" + ENDLINE;
+
+		fixture.help();
+
+		assertEquals(expected, mockListener.getLastOutput());
+	}
+
+	@Test(expected = ExitException.class)
+	public void testRun_1() throws Exception {
+		CMDexit fixture = new CMDexit();
+		List<Object> parameters = new ArrayList<Object>();
+
+		fixture.run(parameters);
+	}
+
+	@Test(expected = ExitException.class)
+	public void testRun_2() throws Exception {
+		CMDexit fixture = new CMDexit();
+		List<Object> parameters = new ArrayList<Object>();
+		parameters.add("test");
+
+		fixture.run(parameters);
+	}
+
+	@Before
+	public void setUp() throws Exception {
+		System.setSecurityManager(new NoExitSecurityManager());
+	}
+
+	@After
+	public void tearDown() throws Exception {
+		System.setSecurityManager(null);
+	}
+
+	public static void main(String[] args) {
+		new org.junit.runner.JUnitCore().run(CMDexitTest.class);
+	}
+}
Index: /trunk/JavaHelperLibTest/src/de/ugoe/cs/util/console/defaultcommands/TestAll.java
===================================================================
--- /trunk/JavaHelperLibTest/src/de/ugoe/cs/util/console/defaultcommands/TestAll.java	(revision 323)
+++ /trunk/JavaHelperLibTest/src/de/ugoe/cs/util/console/defaultcommands/TestAll.java	(revision 323)
@@ -0,0 +1,25 @@
+package de.ugoe.cs.util.console.defaultcommands;
+
+import org.junit.runner.JUnitCore;
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
+
+/**
+ * The class <code>TestAll</code> builds a suite that can be used to run all of
+ * the tests within its package as well as within any subpackages of its
+ * package.
+ * 
+ * @author Steffen Herbold
+ * @version 1.0
+ */
+@RunWith(Suite.class)
+@Suite.SuiteClasses({
+	CMDexecTest.class,
+	CMDexitTest.class
+})
+public class TestAll {
+
+	public static void main(String[] args) {
+		JUnitCore.runClasses(new Class[] { TestAll.class });
+	}
+}
Index: /trunk/JavaHelperLibTest/testdata/de.ugoe.cs.util.console.defaultcommands.CMDexecTest/script1
===================================================================
--- /trunk/JavaHelperLibTest/testdata/de.ugoe.cs.util.console.defaultcommands.CMDexecTest/script1	(revision 323)
+++ /trunk/JavaHelperLibTest/testdata/de.ugoe.cs.util.console.defaultcommands.CMDexecTest/script1	(revision 323)
@@ -0,0 +1,1 @@
+mockCommand
Index: /trunk/JavaHelperLibTest/testdata/de.ugoe.cs.util.console.defaultcommands.CMDexecTest/script2
===================================================================
--- /trunk/JavaHelperLibTest/testdata/de.ugoe.cs.util.console.defaultcommands.CMDexecTest/script2	(revision 323)
+++ /trunk/JavaHelperLibTest/testdata/de.ugoe.cs.util.console.defaultcommands.CMDexecTest/script2	(revision 323)
@@ -0,0 +1,2 @@
+mockCommand
+mockCommand param1
