source: trunk/java-utils-test/src/test/java/de/ugoe/cs/util/console/defaultcommands/CMDexecTest.java @ 927

Last change on this file since 927 was 927, checked in by sherbold, 12 years ago
  • added copyright under the Apache License, Version 2.0
  • Property svn:mime-type set to text/plain
File size: 4.8 KB
Line 
1//   Copyright 2012 Georg-August-Universität Göttingen, Germany
2//
3//   Licensed under the Apache License, Version 2.0 (the "License");
4//   you may not use this file except in compliance with the License.
5//   You may obtain a copy of the License at
6//
7//       http://www.apache.org/licenses/LICENSE-2.0
8//
9//   Unless required by applicable law or agreed to in writing, software
10//   distributed under the License is distributed on an "AS IS" BASIS,
11//   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12//   See the License for the specific language governing permissions and
13//   limitations under the License.
14
15package de.ugoe.cs.util.console.defaultcommands;
16
17import java.util.ArrayList;
18import java.util.List;
19import org.junit.*;
20
21import de.ugoe.cs.util.console.Console;
22import de.ugoe.cs.util.console.mock.MockCommandListener;
23import de.ugoe.cs.util.console.mock.MockOutputListener;
24import de.ugoe.cs.util.console.mock.MockTraceListener;
25import static org.junit.Assert.*;
26
27/**
28 * The class <code>CMDexecTest</code> contains tests for the class
29 * <code>{@link CMDexec}</code>.
30 *
31 * @author Steffen Herbold
32 * @version 1.0
33 */
34public class CMDexecTest {
35
36        final static String ENDLINE = System.getProperty("line.separator");
37
38        @Test
39        public void testHelp_1() throws Exception {
40                CMDexec fixture = new CMDexec();
41                MockOutputListener mockListener = new MockOutputListener();
42                Console.getInstance().registerOutputListener(mockListener);
43                String expected = "exec <filename>";
44
45                assertEquals(expected, fixture.help());
46        }
47
48        @Test
49        public void testRun_1() throws Exception {
50                CMDexec fixture = new CMDexec();
51                MockCommandListener mockCommandListener = new MockCommandListener();
52                MockTraceListener mockTraceListener = new MockTraceListener();
53                Console.getInstance().registerCommandListener(mockCommandListener);
54                Console.getInstance().registerTraceListener(mockTraceListener);
55                List<Object> parameters = new ArrayList<Object>();
56                parameters
57                                .add("testdata/de.ugoe.cs.util.console.defaultcommands.CMDexecTest/script1");
58                String exepctedCommand = "mockCommand";
59                String expectedTrace = "Executing \"mockCommand\"";
60
61                fixture.run(parameters);
62
63                assertEquals(exepctedCommand, mockCommandListener.getLastCommand());
64                assertEquals(expectedTrace + ENDLINE, mockTraceListener.getLastTrace());
65        }
66
67        @Test
68        public void testRun_2() throws Exception {
69                CMDexec fixture = new CMDexec();
70                MockCommandListener mockCommandListener = new MockCommandListener();
71                MockTraceListener mockTraceListener = new MockTraceListener();
72                Console.getInstance().registerCommandListener(mockCommandListener);
73                Console.getInstance().registerTraceListener(mockTraceListener);
74                List<Object> parameters = new ArrayList<Object>();
75                parameters
76                                .add("testdata/de.ugoe.cs.util.console.defaultcommands.CMDexecTest/script2");
77                String expectedCommand = "mockCommand param1";
78                String expectedTrace = "Executing \"mockCommand param1\"";
79
80                fixture.run(parameters);
81
82                assertEquals(expectedCommand, mockCommandListener.getLastCommand());
83                assertEquals(expectedTrace + ENDLINE, mockTraceListener.getLastTrace());
84        }
85
86        @Test(expected = java.lang.IllegalArgumentException.class)
87        public void testRun_3() throws Exception {
88                CMDexec fixture = new CMDexec();
89                MockCommandListener mockCommandListener = new MockCommandListener();
90                MockTraceListener mockTraceListener = new MockTraceListener();
91                Console.getInstance().registerCommandListener(mockCommandListener);
92                Console.getInstance().registerTraceListener(mockTraceListener);
93                List<Object> parameters = new ArrayList<Object>();
94
95                fixture.run(parameters);
96        }
97
98        @Test
99        public void testRun_4() throws Exception {
100                CMDexec fixture = new CMDexec();
101                MockCommandListener mockCommandListener = new MockCommandListener();
102                MockTraceListener mockTraceListener = new MockTraceListener();
103                Console.getInstance().registerCommandListener(mockCommandListener);
104                Console.getInstance().registerTraceListener(mockTraceListener);
105                List<Object> parameters = new ArrayList<Object>();
106                parameters
107                                .add("testdata/de.ugoe.cs.util.console.defaultcommands.CMDexecTest/script2");
108                parameters.add(Integer.parseInt("1"));
109                String expectedCommand = "mockCommand param1";
110                String expectedTrace = "Executing \"mockCommand param1\"";
111
112                fixture.run(parameters);
113
114                assertEquals(expectedCommand, mockCommandListener.getLastCommand());
115                assertEquals(expectedTrace + ENDLINE, mockTraceListener.getLastTrace());
116        }
117
118        @Test(expected = java.lang.IllegalArgumentException.class)
119        public void testRun_5() throws Exception {
120                CMDexec fixture = new CMDexec();
121                List<Object> parameters = new ArrayList<Object>();
122                parameters.add(Integer.parseInt("1"));
123
124                fixture.run(parameters);
125        }
126
127        public static void main(String[] args) {
128                new org.junit.runner.JUnitCore().run(CMDexecTest.class);
129        }
130}
Note: See TracBrowser for help on using the repository browser.