Bram Moolenaar | 3a304b2 | 2015-06-25 13:57:36 +0200 | [diff] [blame] | 1 | Tests for using Ctrl-A/Ctrl-X on visual selections |
| 2 | |
| 3 | Test cases |
| 4 | ========== |
| 5 | |
| 6 | 1) Ctrl-A on visually selected number |
| 7 | Text: |
| 8 | foobar-10 |
Bram Moolenaar | 9bb1930 | 2015-07-03 12:44:07 +0200 | [diff] [blame] | 9 | Expected: |
Bram Moolenaar | 3a304b2 | 2015-06-25 13:57:36 +0200 | [diff] [blame] | 10 | 1) Ctrl-A on start of line: |
| 11 | foobar-9 |
| 12 | 2) Ctrl-A on visually selected "-10": |
| 13 | foobar-9 |
| 14 | 3) Ctrl-A on visually selected "10": |
| 15 | foobar-11 |
| 16 | 4) Ctrl-X on visually selected "-10" |
| 17 | foobar-11 |
| 18 | 5) Ctrl-X on visually selected "10" |
| 19 | foobar-9 |
| 20 | |
| 21 | 2) Ctrl-A on visually selected lines |
| 22 | Text: |
| 23 | 10 |
| 24 | 20 |
| 25 | 30 |
| 26 | 40 |
| 27 | |
Bram Moolenaar | 9bb1930 | 2015-07-03 12:44:07 +0200 | [diff] [blame] | 28 | Expected: |
Bram Moolenaar | 3a304b2 | 2015-06-25 13:57:36 +0200 | [diff] [blame] | 29 | 1) Ctrl-A on visually selected lines: |
| 30 | 11 |
| 31 | 21 |
| 32 | 31 |
| 33 | 41 |
| 34 | |
| 35 | 2) Ctrl-X on visually selected lines: |
| 36 | 9 |
| 37 | 19 |
| 38 | 29 |
| 39 | 39 |
| 40 | |
| 41 | 3) g Ctrl-A on visually selected lines, with non-numbers in between |
| 42 | Text: |
| 43 | 10 |
| 44 | |
| 45 | 20 |
| 46 | |
| 47 | 30 |
| 48 | |
| 49 | 40 |
| 50 | |
Bram Moolenaar | 9bb1930 | 2015-07-03 12:44:07 +0200 | [diff] [blame] | 51 | Expected: |
Bram Moolenaar | 3a304b2 | 2015-06-25 13:57:36 +0200 | [diff] [blame] | 52 | 1) 2 g Ctrl-A on visually selected lines: |
| 53 | 12 |
| 54 | |
| 55 | 24 |
| 56 | |
| 57 | 36 |
| 58 | |
| 59 | 48 |
| 60 | 2) 2 g Ctrl-X on visually selected lines |
| 61 | 8 |
| 62 | |
| 63 | 16 |
| 64 | |
| 65 | 24 |
| 66 | |
| 67 | 32 |
| 68 | |
| 69 | 4) Ctrl-A on non-number |
| 70 | Text: |
| 71 | foobar-10 |
Bram Moolenaar | 9bb1930 | 2015-07-03 12:44:07 +0200 | [diff] [blame] | 72 | Expected: |
Bram Moolenaar | 3a304b2 | 2015-06-25 13:57:36 +0200 | [diff] [blame] | 73 | 1) visually select foobar: |
| 74 | foobar-10 |
| 75 | |
Bram Moolenaar | 9bb1930 | 2015-07-03 12:44:07 +0200 | [diff] [blame] | 76 | 5) g<Ctrl-A> on letter |
| 77 | Test: |
| 78 | a |
| 79 | a |
| 80 | a |
| 81 | a |
| 82 | Expected: |
| 83 | 1) g Ctrl-A on visually selected lines |
| 84 | b |
| 85 | c |
| 86 | d |
| 87 | e |
| 88 | |
| 89 | 6) g<Ctrl-A> on letter |
| 90 | Test: |
| 91 | z |
| 92 | z |
| 93 | z |
| 94 | z |
| 95 | Expected: |
| 96 | 1) g Ctrl-X on visually selected lines |
| 97 | y |
| 98 | x |
| 99 | w |
| 100 | v |
| 101 | |
| 102 | 7) <Ctrl-A> on letter |
| 103 | Test: |
| 104 | 2 |
| 105 | 1 |
| 106 | 0 |
| 107 | -1 |
| 108 | -2 |
| 109 | |
| 110 | Expected: |
| 111 | 1) Ctrl-A on visually selected lines |
| 112 | 3 |
| 113 | 2 |
| 114 | 1 |
| 115 | 0 |
| 116 | -1 |
| 117 | |
| 118 | 2) Ctrl-X on visually selected lines |
| 119 | 1 |
| 120 | 0 |
| 121 | -1 |
| 122 | -2 |
| 123 | -3 |
| 124 | 8) Block increment on 0x9 |
| 125 | Text: |
| 126 | 0x9 |
| 127 | 0x9 |
| 128 | Expected: |
| 129 | 1) Ctrl-A on visually block selected region (cursor at beginning): |
| 130 | 0xa |
| 131 | 0xa |
| 132 | 2) Ctrl-A on visually block selected region (cursor at end) |
| 133 | 0xa |
| 134 | 0xa |
| 135 | |
| 136 | 9) Increment and redo |
| 137 | Text: |
| 138 | 2 |
| 139 | 2 |
| 140 | |
| 141 | 3 |
| 142 | 3 |
| 143 | |
| 144 | Expected: |
| 145 | 1) 2 Ctrl-A on first 2 visually selected lines |
| 146 | 4 |
| 147 | 4 |
| 148 | 2) redo (.) on 3 |
| 149 | 5 |
| 150 | 5 |
| 151 | 10) sequentially decrement 1 |
| 152 | Text: |
| 153 | 1 |
| 154 | 1 |
| 155 | 1 |
| 156 | 1 |
| 157 | Expected: |
| 158 | 1) g Ctrl-X on visually selected lines |
| 159 | 0 |
| 160 | -1 |
| 161 | -2 |
| 162 | -3 |
| 163 | |
| 164 | 11) visually block selected indented lines |
| 165 | Text: |
| 166 | 1 |
| 167 | 1 |
| 168 | 1 |
| 169 | 1 |
| 170 | Expexted: |
| 171 | 1) g Ctrl-A on block selected indented lines |
| 172 | 2 |
| 173 | 1 |
| 174 | 3 |
| 175 | 4 |
| 176 | |
| 177 | 12) visually selected several columns |
| 178 | Text: |
| 179 | 0 0 |
| 180 | 0 0 |
| 181 | 0 0 |
| 182 | Expected: |
| 183 | 1) 'v' select last zero and first zeroes |
| 184 | 0 1 |
| 185 | 1 0 |
| 186 | 1 0 |
| 187 | |
Bram Moolenaar | 5d1bc78 | 2015-07-17 13:03:48 +0200 | [diff] [blame] | 188 | 13) visually selected part of columns |
| 189 | Text: |
| 190 | max: 100px |
| 191 | max: 200px |
| 192 | max: 300px |
| 193 | max: 400px |
| 194 | Expected: |
| 195 | 1) 'v' on first two numbers Ctrl-A |
| 196 | max: 110px |
| 197 | max: 220px |
| 198 | max: 330px |
| 199 | max: 400px |
| 200 | 2) 'v' on first two numbers Ctrl-X |
| 201 | max: 90px |
| 202 | max: 190px |
| 203 | max: 290px |
| 204 | max: 400px |
| 205 | |
| 206 | 14) redo in block mode |
| 207 | Text: |
| 208 | 1 1 |
| 209 | 1 1 |
| 210 | Expected: |
| 211 | 1) Ctrl-a on first column, redo on second column |
| 212 | 2 2 |
| 213 | 2 2 |
| 214 | |
| 215 | 15) block select single numbers |
| 216 | Text: |
| 217 | 101 |
| 218 | Expected: |
| 219 | 1) Ctrl-a on visually selected zero |
| 220 | 111 |
| 221 | |
| 222 | 16) increment right aligned numbers |
| 223 | Text: |
| 224 | 1 |
| 225 | 19 |
| 226 | 119 |
| 227 | Expected: |
| 228 | 1) Ctrl-a on line selected region |
| 229 | 2 |
| 230 | 20 |
| 231 | 120 |
| 232 | |
| 233 | 17) block-wise increment and redo |
| 234 | Text: |
| 235 | 100 |
| 236 | 1 |
| 237 | |
| 238 | 100 |
| 239 | 1 |
| 240 | |
| 241 | Expected: |
| 242 | 1) Ctrl-V j $ on first block, afterwards '.' on second |
| 243 | 101 |
| 244 | 2 |
| 245 | |
| 246 | 101 |
| 247 | 2 |
| 248 | |
| 249 | 18) repeat of g<Ctrl-a> |
| 250 | Text: |
| 251 | 0 |
| 252 | 0 |
| 253 | 0 |
| 254 | 0 |
| 255 | |
| 256 | Expected: |
| 257 | 1) V 4j g<ctrl-a>, repeat twice afterwards with . |
| 258 | 3 |
| 259 | 6 |
| 260 | 9 |
| 261 | 12 |
| 262 | |
| 263 | |
| 264 | |
Bram Moolenaar | 3a304b2 | 2015-06-25 13:57:36 +0200 | [diff] [blame] | 265 | STARTTEST |
| 266 | :so small.vim |
Bram Moolenaar | 6a57cce | 2015-06-28 19:24:39 +0200 | [diff] [blame] | 267 | :" |
| 268 | :" Avoid CTRL-X being mapped in Visual mode for MS-Windows |
| 269 | :vmapclear |
| 270 | :" |
Bram Moolenaar | 3a304b2 | 2015-06-25 13:57:36 +0200 | [diff] [blame] | 271 | :" Test 1 |
| 272 | :/^S1=/+,/^E1=/-y a |
Bram Moolenaar | 9bb1930 | 2015-07-03 12:44:07 +0200 | [diff] [blame] | 273 | :/^E1=/+put a |
| 274 | :/^E1=/+2put a |
| 275 | f-v$:/^E1=/+3put a |
| 276 | f1v$:/^E1=/+4put a |
| 277 | f-v$:/^E1=/+5put a |
Bram Moolenaar | 3a304b2 | 2015-06-25 13:57:36 +0200 | [diff] [blame] | 278 | f1v$ |
| 279 | |
Bram Moolenaar | 5d1bc78 | 2015-07-17 13:03:48 +0200 | [diff] [blame] | 280 | :" Test 2 |
Bram Moolenaar | 3a304b2 | 2015-06-25 13:57:36 +0200 | [diff] [blame] | 281 | :/^S2=/+,/^E2=/-y a |
Bram Moolenaar | 9bb1930 | 2015-07-03 12:44:07 +0200 | [diff] [blame] | 282 | :/^E2=/+put a |
Bram Moolenaar | 5d1bc78 | 2015-07-17 13:03:48 +0200 | [diff] [blame] | 283 | V3k$3j:.+put a |
Bram Moolenaar | 3a304b2 | 2015-06-25 13:57:36 +0200 | [diff] [blame] | 284 | V3k$ |
| 285 | |
| 286 | :" Test 3 |
| 287 | :/^S3=/+,/^E3=/-y a |
| 288 | :/^E3=/+put a |
Bram Moolenaar | 5d1bc78 | 2015-07-17 13:03:48 +0200 | [diff] [blame] | 289 | V6k2g6j:.+put a |
Bram Moolenaar | 3a304b2 | 2015-06-25 13:57:36 +0200 | [diff] [blame] | 290 | V6k2g |
| 291 | |
| 292 | :" Test 4 |
| 293 | :/^S4=/+,/^E4=/-y a |
| 294 | :/^E4=/+put a |
| 295 | vf- |
| 296 | |
Bram Moolenaar | 9bb1930 | 2015-07-03 12:44:07 +0200 | [diff] [blame] | 297 | :" Test 5 |
| 298 | :set nrformats+=alpha |
| 299 | :/^S5=/+,/^E5=/-y a |
| 300 | :/^E5=/+put a |
| 301 | v3kg |
| 302 | |
| 303 | :" Test 6 |
| 304 | :/^S6=/+,/^E6=/-y a |
| 305 | :/^E6=/+put a |
| 306 | v3kg |
| 307 | |
| 308 | :" Test 7 |
Bram Moolenaar | 5d1bc78 | 2015-07-17 13:03:48 +0200 | [diff] [blame] | 309 | :set nrformats&vim |
Bram Moolenaar | 9bb1930 | 2015-07-03 12:44:07 +0200 | [diff] [blame] | 310 | :/^S7=/+,/^E7=/-y a |
| 311 | :/^E7=/+put a |
Bram Moolenaar | 5d1bc78 | 2015-07-17 13:03:48 +0200 | [diff] [blame] | 312 | V4k4j:.+put a |
Bram Moolenaar | 9bb1930 | 2015-07-03 12:44:07 +0200 | [diff] [blame] | 313 | V4k |
| 314 | |
| 315 | :" Test 8 |
| 316 | :/^S8=/+,/^E8=/-y a |
| 317 | :/^E8=/+put a |
Bram Moolenaar | 5d1bc78 | 2015-07-17 13:03:48 +0200 | [diff] [blame] | 318 | kj$j:.+put a |
Bram Moolenaar | 9bb1930 | 2015-07-03 12:44:07 +0200 | [diff] [blame] | 319 | k$+ |
| 320 | |
| 321 | :" Test 9 |
| 322 | :/^S9=/+,/^E9=/-y a |
| 323 | :/^E9=/+put a |
Bram Moolenaar | 5d1bc78 | 2015-07-17 13:03:48 +0200 | [diff] [blame] | 324 | 5kVj23j. |
Bram Moolenaar | 9bb1930 | 2015-07-03 12:44:07 +0200 | [diff] [blame] | 325 | |
| 326 | :" Test 10 |
| 327 | :/^S10=/+,/^E10=/-y a |
| 328 | :/^E10=/+put a |
| 329 | V3kg |
| 330 | |
| 331 | : Test 11 |
| 332 | :/^S11=/+,/^E11=/-y a |
| 333 | :/^E11=/+put a |
| 334 | 3kf13jg |
| 335 | |
| 336 | :" Test 12 |
| 337 | :/^S12=/+,/^E12=/-y a |
| 338 | :/^E12=/+put a |
| 339 | 2k$v++ |
| 340 | |
Bram Moolenaar | 5d1bc78 | 2015-07-17 13:03:48 +0200 | [diff] [blame] | 341 | :" Test 13 |
| 342 | :/^S13=/+,/^E13=/-y a |
| 343 | :/^E13=/+put a |
| 344 | 3kf1l2j3j:.+put a |
| 345 | 3kf1l2j |
| 346 | |
| 347 | :" Test 14 |
| 348 | :/^S14=/+,/^E14=/-y a |
| 349 | :/^E14=/+put a |
| 350 | kw. |
| 351 | |
| 352 | :" Test 15 |
| 353 | :/^S15=/+,/^E15=/-y a |
| 354 | :/^E15=/+put a |
| 355 | lv |
| 356 | |
| 357 | :" Test 16 |
| 358 | :/^S16=/+,/^E16=/-y a |
| 359 | :/^E16=/+put a |
| 360 | V3k |
| 361 | |
| 362 | :" Test 17 |
| 363 | :/^S17=/+,/^E17=/-y a |
| 364 | :/^E17=/+put a |
| 365 | 4kj$2j. |
| 366 | |
| 367 | :" Test 18 |
| 368 | :/^S18=/+,/^E18=/-y a |
| 369 | :/^E18=/+put a |
| 370 | V3kg.. |
| 371 | |
Bram Moolenaar | 3a304b2 | 2015-06-25 13:57:36 +0200 | [diff] [blame] | 372 | :" Save the report |
| 373 | :/^# Test 1/,$w! test.out |
| 374 | :qa! |
| 375 | |
| 376 | |
| 377 | # Test 1 |
| 378 | S1====== |
| 379 | foobar-10 |
| 380 | E1====== |
| 381 | |
| 382 | |
| 383 | |
| 384 | # Test 2 |
| 385 | S2===== |
| 386 | 10 |
| 387 | 20 |
| 388 | 30 |
| 389 | 40 |
| 390 | E2===== |
| 391 | |
| 392 | |
| 393 | |
| 394 | # Test 3 |
| 395 | S3===== |
| 396 | 10 |
| 397 | |
| 398 | 20 |
| 399 | |
| 400 | 30 |
| 401 | |
| 402 | 40 |
| 403 | E3===== |
| 404 | |
| 405 | |
| 406 | |
| 407 | # Test 4 |
| 408 | S4===== |
| 409 | foobar-10 |
| 410 | E4===== |
| 411 | |
| 412 | |
Bram Moolenaar | 9bb1930 | 2015-07-03 12:44:07 +0200 | [diff] [blame] | 413 | |
| 414 | # Test 5 |
| 415 | S5==== |
| 416 | a |
| 417 | a |
| 418 | a |
| 419 | a |
| 420 | E5==== |
| 421 | |
| 422 | |
| 423 | # Test 6 |
| 424 | S6==== |
| 425 | z |
| 426 | z |
| 427 | z |
| 428 | z |
| 429 | E6==== |
| 430 | |
| 431 | |
| 432 | |
| 433 | # Test 7 |
| 434 | S7==== |
| 435 | 2 |
| 436 | 1 |
| 437 | 0 |
| 438 | -1 |
| 439 | -2 |
| 440 | E7==== |
| 441 | |
| 442 | |
| 443 | |
| 444 | # Test 8 |
| 445 | S8==== |
| 446 | 0x9 |
| 447 | 0x9 |
| 448 | E8==== |
| 449 | |
| 450 | |
| 451 | |
| 452 | |
| 453 | # Test 9 |
| 454 | S9==== |
| 455 | 2 |
| 456 | 2 |
| 457 | |
| 458 | 3 |
| 459 | 3 |
| 460 | |
| 461 | E9==== |
| 462 | |
| 463 | |
| 464 | |
| 465 | |
| 466 | # Test 10 |
| 467 | S10==== |
| 468 | 1 |
| 469 | 1 |
| 470 | 1 |
| 471 | 1 |
| 472 | E10==== |
| 473 | |
| 474 | |
| 475 | |
| 476 | |
| 477 | # Test 11 |
| 478 | S11==== |
| 479 | 1 |
| 480 | 1 |
| 481 | 1 |
| 482 | 1 |
| 483 | E11==== |
| 484 | |
| 485 | |
| 486 | |
| 487 | # Test 12 |
| 488 | S12==== |
| 489 | 0 0 |
| 490 | 0 0 |
| 491 | 0 0 |
| 492 | E12==== |
| 493 | |
| 494 | |
| 495 | |
Bram Moolenaar | 5d1bc78 | 2015-07-17 13:03:48 +0200 | [diff] [blame] | 496 | # Test 13 |
| 497 | S13==== |
| 498 | max: 100px |
| 499 | max: 200px |
| 500 | max: 300px |
| 501 | max: 400px |
| 502 | E13==== |
| 503 | |
| 504 | |
| 505 | |
| 506 | # Test 14 |
| 507 | S14==== |
| 508 | 1 1 |
| 509 | 1 1 |
| 510 | E14==== |
| 511 | |
| 512 | |
| 513 | |
| 514 | # Test 15 |
| 515 | S15==== |
| 516 | 101 |
| 517 | E15==== |
| 518 | |
| 519 | |
| 520 | |
| 521 | # Test 16 |
| 522 | S16==== |
| 523 | 1 |
| 524 | 19 |
| 525 | 119 |
| 526 | E16==== |
| 527 | |
| 528 | |
| 529 | |
| 530 | # Test 17 |
| 531 | S17==== |
| 532 | 100 |
| 533 | 1 |
| 534 | |
| 535 | 100 |
| 536 | 1 |
| 537 | E17==== |
| 538 | |
| 539 | |
| 540 | # Test 18 |
| 541 | S18==== |
| 542 | 0 |
| 543 | 0 |
| 544 | 0 |
| 545 | 0 |
| 546 | E18==== |
Bram Moolenaar | 9bb1930 | 2015-07-03 12:44:07 +0200 | [diff] [blame] | 547 | |
| 548 | |
| 549 | |
| 550 | |
| 551 | |
Bram Moolenaar | 3a304b2 | 2015-06-25 13:57:36 +0200 | [diff] [blame] | 552 | ENDTEST |
| 553 | |