Bram Moolenaar | 40e6a71 | 2010-05-16 22:32:54 +0200 | [diff] [blame] | 1 | Test for encryption. |
Bram Moolenaar | 72fe56f | 2013-07-01 21:00:35 +0200 | [diff] [blame] | 2 | The test data is in another file to avoid problems with 'encoding', especially |
| 3 | cp932. |
Bram Moolenaar | 40e6a71 | 2010-05-16 22:32:54 +0200 | [diff] [blame] | 4 | |
| 5 | STARTTEST |
| 6 | :so small.vim |
Bram Moolenaar | 72fe56f | 2013-07-01 21:00:35 +0200 | [diff] [blame] | 7 | :set enc=latin1 |
| 8 | :bwipe! |
| 9 | :r test71a.in |
Bram Moolenaar | f50a253 | 2010-05-21 15:36:08 +0200 | [diff] [blame] | 10 | :/^start of text/+1 |
| 11 | :let text_lines = getline('.', line('.') + 2) |
Bram Moolenaar | 49771f4 | 2010-07-20 17:32:38 +0200 | [diff] [blame] | 12 | :/^start of cm=zip bytes/+1 |
Bram Moolenaar | f50a253 | 2010-05-21 15:36:08 +0200 | [diff] [blame] | 13 | :let cm0_bytes = getline('.', '.') |
Bram Moolenaar | 49771f4 | 2010-07-20 17:32:38 +0200 | [diff] [blame] | 14 | :/^start of cm=blowfish bytes/+1 |
Bram Moolenaar | f50a253 | 2010-05-21 15:36:08 +0200 | [diff] [blame] | 15 | :let cm1_bytes = getline('.', '.') |
Bram Moolenaar | 8f4ac01 | 2014-08-10 13:38:34 +0200 | [diff] [blame^] | 16 | :/^start of cm=blowfish2 bytes/+1 |
| 17 | :let cm2_bytes = getline('.', '.') |
Bram Moolenaar | d73895e | 2013-06-19 21:17:31 +0200 | [diff] [blame] | 18 | :bwipe! |
Bram Moolenaar | f50a253 | 2010-05-21 15:36:08 +0200 | [diff] [blame] | 19 | :call append(0, text_lines) |
Bram Moolenaar | 40e6a71 | 2010-05-16 22:32:54 +0200 | [diff] [blame] | 20 | :$d |
| 21 | :X |
| 22 | foobar |
| 23 | foobar |
| 24 | :w! Xtestfile |
| 25 | :bwipe! |
| 26 | :e Xtestfile |
| 27 | foobar |
Bram Moolenaar | f50a253 | 2010-05-21 15:36:08 +0200 | [diff] [blame] | 28 | :let cm0_read_back = getline('.', '$') |
Bram Moolenaar | 40e6a71 | 2010-05-16 22:32:54 +0200 | [diff] [blame] | 29 | :set key= |
Bram Moolenaar | 49771f4 | 2010-07-20 17:32:38 +0200 | [diff] [blame] | 30 | :set cryptmethod=blowfish |
| 31 | :" If the blowfish test fails 'cryptmethod' will be 'zip' now. |
| 32 | :%s/^/\=&cryptmethod == 'blowfish' ? "OK " : "blowfish test failed "/ |
Bram Moolenaar | 40e6a71 | 2010-05-16 22:32:54 +0200 | [diff] [blame] | 33 | :X |
| 34 | barfoo |
| 35 | barfoo |
| 36 | :w! Xtestfile |
| 37 | :bwipe! |
| 38 | :e Xtestfile |
| 39 | barfoo |
Bram Moolenaar | f50a253 | 2010-05-21 15:36:08 +0200 | [diff] [blame] | 40 | :let cm1_read_back = getline('.', '$') |
Bram Moolenaar | 8f4ac01 | 2014-08-10 13:38:34 +0200 | [diff] [blame^] | 41 | :set key= |
| 42 | :set cryptmethod=blowfish2 |
| 43 | :" If the blowfish test fails 'cryptmethod' will be 'zip' now. |
| 44 | :%s/^/\=&cryptmethod == 'blowfish2' ? "OK " : "blowfish test failed "/ |
| 45 | :X |
| 46 | bar2foo |
| 47 | bar2foo |
| 48 | :w! Xtestfile |
| 49 | :bwipe! |
| 50 | :e Xtestfile |
| 51 | bar2foo |
| 52 | :let cm2_read_back = getline('.', '$') |
Bram Moolenaar | f50a253 | 2010-05-21 15:36:08 +0200 | [diff] [blame] | 53 | :bwipe! |
| 54 | :set bin noeol key= |
| 55 | :call append(0, cm0_bytes) |
| 56 | :$d |
| 57 | :set fenc=latin1 |
| 58 | :w! Xtestfile |
| 59 | :bwipe! |
| 60 | :set nobin |
| 61 | :e Xtestfile |
| 62 | foofoo |
| 63 | :let cm0_read_bin = getline('.', '$') |
| 64 | :bwipe! |
| 65 | :set bin noeol key= |
| 66 | :call append(0, cm1_bytes) |
| 67 | :$d |
| 68 | :set fenc=latin1 |
| 69 | :w! Xtestfile |
| 70 | :bwipe! |
| 71 | :set nobin |
| 72 | :e Xtestfile |
| 73 | barbar |
Bram Moolenaar | 8f4ac01 | 2014-08-10 13:38:34 +0200 | [diff] [blame^] | 74 | :let cm1_read_bin = getline('.', '$') |
| 75 | :bwipe! |
| 76 | :set bin noeol key= |
| 77 | :call append(0, cm2_bytes) |
| 78 | :$d |
| 79 | :set fenc=latin1 |
| 80 | :w! Xtestfile |
| 81 | :bwipe! |
| 82 | :set nobin |
| 83 | :e Xtestfile |
| 84 | barburp |
| 85 | :call append(0, cm1_read_bin) |
Bram Moolenaar | f50a253 | 2010-05-21 15:36:08 +0200 | [diff] [blame] | 86 | :call append(0, cm0_read_bin) |
Bram Moolenaar | 8f4ac01 | 2014-08-10 13:38:34 +0200 | [diff] [blame^] | 87 | :call append(0, cm2_read_back) |
Bram Moolenaar | f50a253 | 2010-05-21 15:36:08 +0200 | [diff] [blame] | 88 | :call append(0, cm1_read_back) |
| 89 | :call append(0, cm0_read_back) |
| 90 | :set key= fenc=latin1 |
Bram Moolenaar | 40e6a71 | 2010-05-16 22:32:54 +0200 | [diff] [blame] | 91 | :w! test.out |
| 92 | :qa! |
| 93 | ENDTEST |
| 94 | |