Skip to content

Commit cf67be0

Browse files
committed
tests: add tests for SHA1
1 parent cf00041 commit cf67be0

File tree

1 file changed

+38
-0
lines changed

1 file changed

+38
-0
lines changed

Hashes/tests/SHA1.test.js

+38
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
import { describe, test } from 'vitest'
2+
import { SHA1 } from '../SHA1'
3+
4+
describe('Testing SHA1 function', () => {
5+
const TEST_CASES = [
6+
{ args: [''], expected: 'da39a3ee5e6b4b0d3255bfef95601890afd80709' },
7+
{
8+
args: ['The quick brown fox jumps over the lazy dog'],
9+
expected: '2fd4e1c67a2d28fced849ee1bb76e7391b93eb12'
10+
},
11+
{
12+
args: ['The quick brown fox jumps over the lazy cog'],
13+
expected: 'de9f2c7fd25e1b3afad3e85a0bd17d9b100db4b3'
14+
},
15+
{ args: ['a'], expected: '86f7e437faa5a7fce15d1ddcb9eaeaea377667b8' },
16+
{
17+
args: ['Today is 29.01.2024!'],
18+
expected: 'ae829b60d11fb5ab527d5db2501e06da3402718d'
19+
},
20+
{
21+
args: ['Have a nice day.'],
22+
expected: 'ed51dd3909281c25db5e1d8b1ce6fc701fda20ab'
23+
},
24+
{
25+
args: [
26+
'12345678901234567890123456789012345678901234567890123456789012345678901234567890'
27+
],
28+
expected: '50abf5706a150990a08b2c5ea40fa0e585554732'
29+
}
30+
]
31+
32+
TEST_CASES.forEach((testCase) => {
33+
it(`check with ${JSON.stringify(testCase.args)}`, () => {
34+
const result = SHA1.apply(this, testCase.args)
35+
expect(testCase.expected).toEqual(result)
36+
})
37+
})
38+
})

0 commit comments

Comments
 (0)