Bram Moolenaar | df36514 | 2021-05-03 20:01:45 +0200 | [diff] [blame] | 1 | " Test for :execute, :while, :for and :if |
Bram Moolenaar | 292eff0 | 2017-07-11 21:46:28 +0200 | [diff] [blame] | 2 | |
Bram Moolenaar | df36514 | 2021-05-03 20:01:45 +0200 | [diff] [blame] | 3 | func Test_exec_while_if() |
Bram Moolenaar | 292eff0 | 2017-07-11 21:46:28 +0200 | [diff] [blame] | 4 | new |
| 5 | |
| 6 | let i = 0 |
| 7 | while i < 12 |
| 8 | let i = i + 1 |
Bram Moolenaar | 424bcae | 2022-01-31 14:59:41 +0000 | [diff] [blame] | 9 | execute "normal o" . i . "\033" |
Bram Moolenaar | 292eff0 | 2017-07-11 21:46:28 +0200 | [diff] [blame] | 10 | if i % 2 |
| 11 | normal Ax |
| 12 | if i == 9 |
| 13 | break |
| 14 | endif |
| 15 | if i == 5 |
| 16 | continue |
| 17 | else |
| 18 | let j = 9 |
| 19 | while j > 0 |
Bram Moolenaar | 424bcae | 2022-01-31 14:59:41 +0000 | [diff] [blame] | 20 | execute "normal" j . "a" . j . "\x1b" |
Bram Moolenaar | 292eff0 | 2017-07-11 21:46:28 +0200 | [diff] [blame] | 21 | let j = j - 1 |
| 22 | endwhile |
| 23 | endif |
| 24 | endif |
| 25 | if i == 9 |
Bram Moolenaar | 424bcae | 2022-01-31 14:59:41 +0000 | [diff] [blame] | 26 | execute "normal Az\033" |
Bram Moolenaar | 292eff0 | 2017-07-11 21:46:28 +0200 | [diff] [blame] | 27 | endif |
| 28 | endwhile |
| 29 | unlet i j |
| 30 | |
| 31 | call assert_equal(["", |
| 32 | \ "1x999999999888888887777777666666555554444333221", |
| 33 | \ "2", |
| 34 | \ "3x999999999888888887777777666666555554444333221", |
| 35 | \ "4", |
| 36 | \ "5x", |
| 37 | \ "6", |
| 38 | \ "7x999999999888888887777777666666555554444333221", |
| 39 | \ "8", |
| 40 | \ "9x"], getline(1, 10)) |
Bram Moolenaar | df36514 | 2021-05-03 20:01:45 +0200 | [diff] [blame] | 41 | endfunc |
Bram Moolenaar | 6d91bcb | 2020-08-12 18:50:36 +0200 | [diff] [blame] | 42 | |
| 43 | " vim: shiftwidth=2 sts=2 expandtab |