~shimizukawa/pyreadline/python3

« back to all changes in this revision

Viewing changes to pyreadline/test/test_lineeditor.py

  • Committer: shimizukawa
  • Date: 2011-04-09 07:18:47 UTC
  • Revision ID: shimizukawa-20110409071847-e1qkxxuosizowqp2
revert python3 support.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
# Copyright (C) 2006  Michael Graz. <mgraz@plan10.com>
2
2
 
3
3
import sys, unittest
4
 
sys.path.append ('../..')
 
4
sys.path.append (u'../..')
5
5
#from pyreadline.modes.vi import *
6
6
#from pyreadline import keysyms
7
7
from pyreadline.lineeditor import lineobj
13
13
 
14
14
class Test_copy (unittest.TestCase):
15
15
    def test_copy1 (self):
16
 
        l=lineobj.ReadLineTextBuffer("first second")
 
16
        l=lineobj.ReadLineTextBuffer(u"first second")
17
17
        q=l.copy()
18
18
        self.assertEqual(q.get_line_text(),l.get_line_text())
19
19
        self.assertEqual(q.point,l.point)
20
20
        self.assertEqual(q.mark,l.mark)
21
21
        
22
22
    def test_copy2 (self):
23
 
        l=lineobj.ReadLineTextBuffer("first second",point=5)
 
23
        l=lineobj.ReadLineTextBuffer(u"first second",point=5)
24
24
        q=l.copy()
25
25
        self.assertEqual(q.get_line_text(),l.get_line_text())
26
26
        self.assertEqual(q.point,l.point)
79
79
        tests=[
80
80
        # u"First"
81
81
         (cmd,
82
 
          "First",
83
 
          "#     u",
84
 
          " #    u"),
85
 
         (cmd,
86
 
          "First",
87
 
          "    # u",
88
 
          "     #"),
89
 
         (cmd,
90
 
          "First",
91
 
          "     #",
92
 
          "     #"),
 
82
          u"First",
 
83
          u"#     u",
 
84
          u" #    u"),
 
85
         (cmd,
 
86
          u"First",
 
87
          u"    # u",
 
88
          u"     #"),
 
89
         (cmd,
 
90
          u"First",
 
91
          u"     #",
 
92
          u"     #"),
93
93
          ]
94
94
        for cmd,text,init_point,expected_point in tests:
95
95
            l=lineobj.ReadLineTextBuffer(text,get_point_pos(init_point))
101
101
        tests=[
102
102
        # u"First"
103
103
         (cmd,
104
 
          "First",
105
 
          "     #",
106
 
          "    # u"),
107
 
         (cmd,
108
 
          "First",
109
 
          " #   u",
110
 
          "#    u"),
111
 
         (cmd,
112
 
          "First",
113
 
          "#     u",
114
 
          "#     u"),
 
104
          u"First",
 
105
          u"     #",
 
106
          u"    # u"),
 
107
         (cmd,
 
108
          u"First",
 
109
          u" #   u",
 
110
          u"#    u"),
 
111
         (cmd,
 
112
          u"First",
 
113
          u"#     u",
 
114
          u"#     u"),
115
115
          ]
116
116
        for cmd,text,init_point,expected_point in tests:
117
117
            l=lineobj.ReadLineTextBuffer(text,get_point_pos(init_point))
125
125
        tests=[
126
126
        # u"First Second Third"
127
127
         (cmd,
128
 
          "First Second Third",
129
 
          "                  #",
130
 
          "             #     u"),
131
 
         (cmd,
132
 
          "First Second Third",
133
 
          "             #     u",
134
 
          "      #            u"),
135
 
         (cmd,
136
 
          "First Second Third",
137
 
          "     #             u",
138
 
          "#                  u"),
139
 
         (cmd,
140
 
          "First Second Third",
141
 
          "#                  u",
142
 
          "#                  u"),
 
128
          u"First Second Third",
 
129
          u"                  #",
 
130
          u"             #     u"),
 
131
         (cmd,
 
132
          u"First Second Third",
 
133
          u"             #     u",
 
134
          u"      #            u"),
 
135
         (cmd,
 
136
          u"First Second Third",
 
137
          u"     #             u",
 
138
          u"#                  u"),
 
139
         (cmd,
 
140
          u"First Second Third",
 
141
          u"#                  u",
 
142
          u"#                  u"),
143
143
          ]
144
144
        for cmd,text,init_point,expected_point in tests:
145
145
            l=lineobj.ReadLineTextBuffer(text,get_point_pos(init_point))
151
151
        tests=[
152
152
        # u"First Second Third"
153
153
         (cmd,
154
 
          "First Second Third",
155
 
          "#                 u",
156
 
          "      #           u"),
157
 
         (cmd,
158
 
          "First Second Third",
159
 
          "    #             u",
160
 
          "      #           u"),
161
 
         (cmd,
162
 
          "First Second Third",
163
 
          "      #            u",
164
 
          "             #     u"),
165
 
         (cmd,
166
 
          "First Second Third",
167
 
          "              #    u",
168
 
          "                  #"),
 
154
          u"First Second Third",
 
155
          u"#                 u",
 
156
          u"      #           u"),
 
157
         (cmd,
 
158
          u"First Second Third",
 
159
          u"    #             u",
 
160
          u"      #           u"),
 
161
         (cmd,
 
162
          u"First Second Third",
 
163
          u"      #            u",
 
164
          u"             #     u"),
 
165
         (cmd,
 
166
          u"First Second Third",
 
167
          u"              #    u",
 
168
          u"                  #"),
169
169
          ]
170
170
        for cmd,text,init_point,expected_point in tests:
171
171
            l=lineobj.ReadLineTextBuffer(text,get_point_pos(init_point))
177
177
        tests=[
178
178
        # u"First Second Third"
179
179
         (cmd,
180
 
          "First Second Third",
181
 
          "#                 u",
182
 
          "     #            u"),
183
 
         (cmd,
184
 
          "First Second Third",
185
 
          "    #             u",
186
 
          "     #            u"),
187
 
         (cmd,
188
 
          "First Second Third",
189
 
          "      #            u",
190
 
          "            #      u"),
191
 
         (cmd,
192
 
          "First Second Third",
193
 
          "              #    u",
194
 
          "                  #"),
 
180
          u"First Second Third",
 
181
          u"#                 u",
 
182
          u"     #            u"),
 
183
         (cmd,
 
184
          u"First Second Third",
 
185
          u"    #             u",
 
186
          u"     #            u"),
 
187
         (cmd,
 
188
          u"First Second Third",
 
189
          u"      #            u",
 
190
          u"            #      u"),
 
191
         (cmd,
 
192
          u"First Second Third",
 
193
          u"              #    u",
 
194
          u"                  #"),
195
195
          ]
196
196
        for cmd,text,init_point,expected_point in tests:
197
197
            l=lineobj.ReadLineTextBuffer(text,get_point_pos(init_point))
203
203
        tests=[
204
204
        # u"First Second Third"
205
205
         (cmd,
206
 
          "First Second Third",
207
 
          "                  #",
208
 
          "            #      u"),
209
 
         (cmd,
210
 
          "First Second Third",
211
 
          "            #      u",
212
 
          "     #             u"),
213
 
         (cmd,
214
 
          "First Second Third",
215
 
          "     #             u",
216
 
          "#                  u"),
217
 
         (cmd,
218
 
          "First Second Third",
219
 
          "#                  u",
220
 
          "#                  u"),          
 
206
          u"First Second Third",
 
207
          u"                  #",
 
208
          u"            #      u"),
 
209
         (cmd,
 
210
          u"First Second Third",
 
211
          u"            #      u",
 
212
          u"     #             u"),
 
213
         (cmd,
 
214
          u"First Second Third",
 
215
          u"     #             u",
 
216
          u"#                  u"),
 
217
         (cmd,
 
218
          u"First Second Third",
 
219
          u"#                  u",
 
220
          u"#                  u"),          
221
221
          ]
222
222
        for cmd,text,init_point,expected_point in tests:
223
223
            l=lineobj.ReadLineTextBuffer(text,get_point_pos(init_point))
229
229
        tests=[
230
230
        # u"First Second Third"
231
231
         (cmd,
232
 
          "First Second Third",
233
 
          "#                  u",
234
 
          "     #             u"),
235
 
         (cmd,
236
 
          "First Second Third",
237
 
          " #                 u",
238
 
          "     #             u"),
239
 
         (cmd,
240
 
          "First Second Third",
241
 
          "             #     u",
242
 
          "                  #"),
 
232
          u"First Second Third",
 
233
          u"#                  u",
 
234
          u"     #             u"),
 
235
         (cmd,
 
236
          u"First Second Third",
 
237
          u" #                 u",
 
238
          u"     #             u"),
 
239
         (cmd,
 
240
          u"First Second Third",
 
241
          u"             #     u",
 
242
          u"                  #"),
243
243
          ]
244
244
        for cmd,text,init_point,expected_point in tests:
245
245
            l=lineobj.ReadLineTextBuffer(text,get_point_pos(init_point))
251
251
        tests=[
252
252
        # u"First Second Third"
253
253
         (cmd,
254
 
          "First Second Third",
255
 
          "     #             u"),
256
 
         (cmd,
257
 
          "First Second Third",
258
 
          "            #      u"),
259
 
         (cmd,
260
 
          "First Second Third",
261
 
          "                  #"),
 
254
          u"First Second Third",
 
255
          u"     #             u"),
 
256
         (cmd,
 
257
          u"First Second Third",
 
258
          u"            #      u"),
 
259
         (cmd,
 
260
          u"First Second Third",
 
261
          u"                  #"),
262
262
          ]
263
263
 
264
264
        for cmd,text,init_point in tests:
271
271
        tests=[
272
272
        # u"First Second Third"
273
273
         (cmd,
274
 
          "First Second Third",
275
 
          "#                  u",
276
 
          "#                  u"),
277
 
         (cmd,
278
 
          "First Second Third",
279
 
          " #                 u",
280
 
          "#                  u"),
281
 
         (cmd,
282
 
          "First Second Third",
283
 
          "               #   u",
284
 
          "             #     u"),
 
274
          u"First Second Third",
 
275
          u"#                  u",
 
276
          u"#                  u"),
 
277
         (cmd,
 
278
          u"First Second Third",
 
279
          u" #                 u",
 
280
          u"#                  u"),
 
281
         (cmd,
 
282
          u"First Second Third",
 
283
          u"               #   u",
 
284
          u"             #     u"),
285
285
          ]
286
286
        for cmd,text,init_point,expected_point in tests:
287
287
            l=lineobj.ReadLineTextBuffer(text,get_point_pos(init_point))
293
293
        tests=[
294
294
        # u"First Second Third"
295
295
         (cmd,
296
 
          "First Second Third",
297
 
          "     #             u"),
298
 
         (cmd,
299
 
          "First Second Third",
300
 
          "            #      u"),
301
 
         (cmd,
302
 
          "First Second Third",
303
 
          "                  #"),
 
296
          u"First Second Third",
 
297
          u"     #             u"),
 
298
         (cmd,
 
299
          u"First Second Third",
 
300
          u"            #      u"),
 
301
         (cmd,
 
302
          u"First Second Third",
 
303
          u"                  #"),
304
304
          ]
305
305
 
306
306
        for cmd,text,init_point in tests:
313
313
        tests=[
314
314
        # u"First Second Third"
315
315
         (cmd,
316
 
          "First Second Third",
317
 
          "#                 u",
318
 
          "#                 u"),
319
 
         (cmd,
320
 
          "First Second Third",
321
 
          "         #         u",
322
 
          "#                  u"),
323
 
         (cmd,
324
 
          "First Second Third",
325
 
          "                  #",
326
 
          "#                  u"),
 
316
          u"First Second Third",
 
317
          u"#                 u",
 
318
          u"#                 u"),
 
319
         (cmd,
 
320
          u"First Second Third",
 
321
          u"         #         u",
 
322
          u"#                  u"),
 
323
         (cmd,
 
324
          u"First Second Third",
 
325
          u"                  #",
 
326
          u"#                  u"),
327
327
          ]
328
328
        for cmd,text,init_point,expected_point in tests:
329
329
            l=lineobj.ReadLineTextBuffer(text,get_point_pos(init_point))
335
335
        tests=[
336
336
        # u"First Second Third"
337
337
         (cmd,
338
 
          "First Second Third",
339
 
          "#                 u",
340
 
          "                  #"),
341
 
         (cmd,
342
 
          "First Second Third",
343
 
          "         #         u",
344
 
          "                  #"),
345
 
         (cmd,
346
 
          "First Second Third",
347
 
          "                  #",
348
 
          "                  #"),
 
338
          u"First Second Third",
 
339
          u"#                 u",
 
340
          u"                  #"),
 
341
         (cmd,
 
342
          u"First Second Third",
 
343
          u"         #         u",
 
344
          u"                  #"),
 
345
         (cmd,
 
346
          u"First Second Third",
 
347
          u"                  #",
 
348
          u"                  #"),
349
349
          ]
350
350
        for cmd,text,init_point,expected_point in tests:
351
351
            l=lineobj.ReadLineTextBuffer(text,get_point_pos(init_point))
357
357
        tests=[
358
358
        # u"First Second Third"
359
359
         (cmd,
360
 
          "First Second Third",
 
360
          u"First Second Third",
361
361
          0),
362
362
         (cmd,
363
 
          "First Second Third",
 
363
          u"First Second Third",
364
364
          12),
365
365
         (cmd,
366
 
          "First Second Third",
 
366
          u"First Second Third",
367
367
          18),
368
368
          ]
369
369
        for cmd,text,p in tests:
375
375
# utility functions
376
376
 
377
377
def get_point_pos(pstr):
378
 
    return pstr.index("#")
 
378
    return pstr.index(u"#")
379
379
 
380
380
def get_mark_pos(mstr):
381
381
    try:
382
 
        return mstr.index("#")
 
382
        return mstr.index(u"#")
383
383
    except ValueError:
384
384
        return -1
385
385
#----------------------------------------------------------------------
386
386
 
387
 
if __name__ == '__main__':
 
387
if __name__ == u'__main__':
388
388
    unittest.main()
389
389
 
390
 
    l=lineobj.ReadLineTextBuffer("First Second Third")
 
390
    l=lineobj.ReadLineTextBuffer(u"First Second Third")