KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > jline > TestEditLine


1 /**
2  * jline - Java console input library
3  * Copyright (c) 2002,2003 Marc Prud'hommeaux marc@apocalypse.org
4  *
5  * This library is free software; you can redistribute it and/or
6  * modify it under the terms of the GNU Lesser General Public
7  * License as published by the Free Software Foundation; either
8  * version 2.1 of the License, or (at your option) any later version.
9  *
10  * This library is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13  * Lesser General Public License for more details.
14  *
15  * You should have received a copy of the GNU Lesser General Public
16  * License along with this library; if not, write to the Free Software
17  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18  */

19 package jline;
20
21 import junit.framework.*;
22
23
24 /**
25  * Tests various features of editing lines.
26  *
27  * @author <a HREF="mailto:marc@apocalypse.org">Marc Prud'hommeaux</a>
28  */

29 public class TestEditLine
30     extends JLineTestCase
31 {
32     public TestEditLine (String JavaDoc test)
33     {
34         super (test);
35     }
36
37
38     public void testDeletePreviousWord ()
39         throws Exception JavaDoc
40     {
41         Buffer b = new Buffer ("This is a test");
42
43         assertBuffer ("This is a ", b = b.op (ConsoleReader.DELETE_PREV_WORD));
44         assertBuffer ("This is ", b = b.op (ConsoleReader.DELETE_PREV_WORD));
45         assertBuffer ("This ", b = b.op (ConsoleReader.DELETE_PREV_WORD));
46         assertBuffer ("", b = b.op (ConsoleReader.DELETE_PREV_WORD));
47         assertBuffer ("", b = b.op (ConsoleReader.DELETE_PREV_WORD));
48         assertBuffer ("", b = b.op (ConsoleReader.DELETE_PREV_WORD));
49     }
50
51
52     public void testMoveToEnd ()
53         throws Exception JavaDoc
54     {
55         Buffer b = new Buffer ("This is a test");
56
57         assertBuffer ("This is a XtestX", new Buffer ("This is a test")
58                 .op (ConsoleReader.PREV_WORD)
59                 .append ('X')
60                 .op (ConsoleReader.MOVE_TO_END)
61                 .append ('X')
62                 );
63
64         assertBuffer ("This is Xa testX", new Buffer ("This is a test")
65                 .op (ConsoleReader.PREV_WORD)
66                 .op (ConsoleReader.PREV_WORD)
67                 .append ('X')
68                 .op (ConsoleReader.MOVE_TO_END)
69                 .append ('X')
70                 );
71
72         assertBuffer ("This Xis a testX", new Buffer ("This is a test")
73                 .op (ConsoleReader.PREV_WORD)
74                 .op (ConsoleReader.PREV_WORD)
75                 .op (ConsoleReader.PREV_WORD)
76                 .append ('X')
77                 .op (ConsoleReader.MOVE_TO_END)
78                 .append ('X')
79                 );
80     }
81
82
83     public void testPreviousWord ()
84         throws Exception JavaDoc
85     {
86         assertBuffer ("This is a Xtest", new Buffer ("This is a test")
87             .op (ConsoleReader.PREV_WORD)
88             .append ('X'));
89         assertBuffer ("This is Xa test", new Buffer ("This is a test")
90             .op (ConsoleReader.PREV_WORD)
91             .op (ConsoleReader.PREV_WORD)
92             .append ('X'));
93         assertBuffer ("This Xis a test", new Buffer ("This is a test")
94             .op (ConsoleReader.PREV_WORD)
95             .op (ConsoleReader.PREV_WORD)
96             .op (ConsoleReader.PREV_WORD)
97             .append ('X'));
98         assertBuffer ("XThis is a test", new Buffer ("This is a test")
99             .op (ConsoleReader.PREV_WORD)
100             .op (ConsoleReader.PREV_WORD)
101             .op (ConsoleReader.PREV_WORD)
102             .op (ConsoleReader.PREV_WORD)
103             .append ('X'));
104         assertBuffer ("XThis is a test", new Buffer ("This is a test")
105             .op (ConsoleReader.PREV_WORD)
106             .op (ConsoleReader.PREV_WORD)
107             .op (ConsoleReader.PREV_WORD)
108             .op (ConsoleReader.PREV_WORD)
109             .op (ConsoleReader.PREV_WORD)
110             .append ('X'));
111         assertBuffer ("XThis is a test", new Buffer ("This is a test")
112             .op (ConsoleReader.PREV_WORD)
113             .op (ConsoleReader.PREV_WORD)
114             .op (ConsoleReader.PREV_WORD)
115             .op (ConsoleReader.PREV_WORD)
116             .op (ConsoleReader.PREV_WORD)
117             .op (ConsoleReader.PREV_WORD)
118             .append ('X'));
119     }
120
121
122     public void testLineStart ()
123         throws Exception JavaDoc
124     {
125         assertBuffer ("XThis is a test", new Buffer ("This is a test")
126             .ctrlA ().append ('X'));
127         assertBuffer ("TXhis is a test", new Buffer ("This is a test")
128             .ctrlA ().right ().append ('X'));
129     }
130
131
132     public void testClearLine ()
133         throws Exception JavaDoc
134     {
135         assertBuffer ("", new Buffer ("This is a test").ctrlU ());
136         assertBuffer ("t", new Buffer ("This is a test").left ().ctrlU ());
137         assertBuffer ("st", new Buffer ("This is a test")
138             .left ().left ().ctrlU ());
139     }
140
141
142     public void testRight ()
143         throws Exception JavaDoc
144     {
145         Buffer b = new Buffer ("This is a test");
146         b = b.left ().right ().back ();
147         assertBuffer ("This is a tes", b);
148         b = b.left ().left ().left ().right ().left ().back ();
149         assertBuffer ("This is ates", b);
150         b.append ('X');
151         assertBuffer ("This is aXtes", b);
152     }
153
154
155     public void testLeft ()
156         throws Exception JavaDoc
157     {
158         Buffer b = new Buffer ("This is a test");
159         b = b.left ().left ().left ();
160         assertBuffer ("This is a est", b = b.back ());
161         assertBuffer ("This is aest", b = b.back ());
162         assertBuffer ("This is est", b = b.back ());
163         assertBuffer ("This isest", b = b.back ());
164         assertBuffer ("This iest", b = b.back ());
165         assertBuffer ("This est", b = b.back ());
166         assertBuffer ("Thisest", b = b.back ());
167         assertBuffer ("Thiest", b = b.back ());
168         assertBuffer ("Thest", b = b.back ());
169         assertBuffer ("Test", b = b.back ());
170         assertBuffer ("est", b = b.back ());
171         assertBuffer ("est", b = b.back ());
172         assertBuffer ("est", b = b.back ());
173         assertBuffer ("est", b = b.back ());
174         assertBuffer ("est", b = b.back ());
175     }
176
177
178     public void testBackspace ()
179         throws Exception JavaDoc
180     {
181         Buffer b = new Buffer ("This is a test");
182         assertBuffer ("This is a tes", b = b.back ());
183         assertBuffer ("This is a te", b = b.back ());
184         assertBuffer ("This is a t", b = b.back ());
185         assertBuffer ("This is a ", b = b.back ());
186         assertBuffer ("This is a", b = b.back ());
187         assertBuffer ("This is ", b = b.back ());
188         assertBuffer ("This is", b = b.back ());
189         assertBuffer ("This i", b = b.back ());
190         assertBuffer ("This ", b = b.back ());
191         assertBuffer ("This", b = b.back ());
192         assertBuffer ("Thi", b = b.back ());
193         assertBuffer ("Th", b = b.back ());
194         assertBuffer ("T", b = b.back ());
195         assertBuffer ("", b = b.back ());
196         assertBuffer ("", b = b.back ());
197         assertBuffer ("", b = b.back ());
198         assertBuffer ("", b = b.back ());
199         assertBuffer ("", b = b.back ());
200     }
201
202
203     public void testBuffer ()
204         throws Exception JavaDoc
205     {
206         assertBuffer ("This is a test", new Buffer ("This is a test"));
207     }
208 }
209
Popular Tags