Bram Moolenaar | 28b2382 | 2017-06-27 18:29:17 +0200 | [diff] [blame] | 1 | " Tests for the sha256() function. |
| 2 | |
Bram Moolenaar | b0f94c1 | 2019-06-13 22:19:53 +0200 | [diff] [blame] | 3 | if !has('cryptv') |
| 4 | throw 'Skipped, cryptv feature missing' |
| 5 | endif |
| 6 | if !exists('*sha256') |
| 7 | throw 'Skipped, sha256 function missing' |
Bram Moolenaar | 28b2382 | 2017-06-27 18:29:17 +0200 | [diff] [blame] | 8 | endif |
| 9 | |
| 10 | function Test_sha256() |
| 11 | " test for empty string: |
| 12 | call assert_equal(sha256(""), 'e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855') |
| 13 | |
| 14 | "'test for 1 char: |
| 15 | call assert_equal(sha256("a"), 'ca978112ca1bbdcafac231b39a23dc4da786eff8147c4e72b9807785afee48bb') |
| 16 | " |
| 17 | "test for 3 chars: |
| 18 | call assert_equal(sha256("abc"), 'ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad') |
| 19 | |
| 20 | " test for contains meta char: |
| 21 | call assert_equal(sha256("foo\nbar"), '807eff6267f3f926a21d234f7b0cf867a86f47e07a532f15e8cc39ed110ca776') |
| 22 | |
| 23 | " test for contains non-ascii char: |
| 24 | call assert_equal(sha256("\xde\xad\xbe\xef"), '5f78c33274e43fa9de5659265c1d917e25c03722dcb0b8d27db8d5feaa813953') |
| 25 | endfunction |