Moved eel and eapml under the contrib folder.
This commit is contained in:
169
contrib/ise_library/text/encryption/eel/tests/sha1_test.e
Normal file
169
contrib/ise_library/text/encryption/eel/tests/sha1_test.e
Normal file
@@ -0,0 +1,169 @@
|
||||
note
|
||||
description: "Summary description for {SHA1_TEST}."
|
||||
author: "Colin LeMahieu"
|
||||
date: "$Date$"
|
||||
revision: "$Revision$"
|
||||
quote: "We must have government, but we must watch them like a hawk. - Millicent Fenwick (1983)"
|
||||
|
||||
class
|
||||
SHA1_TEST
|
||||
|
||||
inherit
|
||||
EQA_TEST_SET
|
||||
|
||||
feature
|
||||
test_long
|
||||
local
|
||||
sha1: SHA1
|
||||
output: SPECIAL [NATURAL_8]
|
||||
solution: SPECIAL [NATURAL_8]
|
||||
correct: BOOLEAN
|
||||
i: INTEGER
|
||||
do
|
||||
create sha1.make
|
||||
create output.make_filled (0, 20)
|
||||
create solution.make_filled (0, 20)
|
||||
solution [0] := 0x34
|
||||
solution [1] := 0xaa
|
||||
solution [2] := 0x97
|
||||
solution [3] := 0x3c
|
||||
solution [4] := 0xd4
|
||||
solution [5] := 0xc4
|
||||
solution [6] := 0xda
|
||||
solution [7] := 0xa4
|
||||
solution [8] := 0xf6
|
||||
solution [9] := 0x1e
|
||||
solution [10] := 0xeb
|
||||
solution [11] := 0x2b
|
||||
solution [12] := 0xdb
|
||||
solution [13] := 0xad
|
||||
solution [14] := 0x27
|
||||
solution [15] := 0x31
|
||||
solution [16] := 0x65
|
||||
solution [17] := 0x34
|
||||
solution [18] := 0x01
|
||||
solution [19] := 0x6f
|
||||
from
|
||||
i := 1
|
||||
until
|
||||
i > 1_000_000
|
||||
loop
|
||||
sha1.sink_character ('a')
|
||||
i := i + 1
|
||||
variant
|
||||
1_000_000 - i + 1
|
||||
end
|
||||
sha1.do_final (output, 0)
|
||||
correct := solution.same_items (output, 0, 0, 20)
|
||||
assert ("test long", correct)
|
||||
end
|
||||
|
||||
test_multi
|
||||
local
|
||||
sha1: SHA1
|
||||
output: SPECIAL [NATURAL_8]
|
||||
solution: SPECIAL [NATURAL_8]
|
||||
correct: BOOLEAN
|
||||
do
|
||||
create sha1.make
|
||||
create output.make_filled (0, 20)
|
||||
create solution.make_filled (0, 20)
|
||||
solution [0] := 0x84
|
||||
solution [1] := 0x98
|
||||
solution [2] := 0x3e
|
||||
solution [3] := 0x44
|
||||
solution [4] := 0x1c
|
||||
solution [5] := 0x3b
|
||||
solution [6] := 0xd2
|
||||
solution [7] := 0x6e
|
||||
solution [8] := 0xba
|
||||
solution [9] := 0xae
|
||||
solution [10] := 0x4a
|
||||
solution [11] := 0xa1
|
||||
solution [12] := 0xf9
|
||||
solution [13] := 0x51
|
||||
solution [14] := 0x29
|
||||
solution [15] := 0xe5
|
||||
solution [16] := 0xe5
|
||||
solution [17] := 0x46
|
||||
solution [18] := 0x70
|
||||
solution [19] := 0xf1
|
||||
sha1.sink_string ("abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq")
|
||||
sha1.do_final (output, 0)
|
||||
correct := solution.same_items (output, 0, 0, 20)
|
||||
assert ("test multi", correct)
|
||||
end
|
||||
|
||||
test_abc
|
||||
local
|
||||
sha1: SHA1
|
||||
output: SPECIAL [NATURAL_8]
|
||||
solution: SPECIAL [NATURAL_8]
|
||||
correct: BOOLEAN
|
||||
do
|
||||
create sha1.make
|
||||
create output.make_filled (0, 20)
|
||||
create solution.make_filled (0, 20)
|
||||
solution [0] := 0xa9
|
||||
solution [1] := 0x99
|
||||
solution [2] := 0x3e
|
||||
solution [3] := 0x36
|
||||
solution [4] := 0x47
|
||||
solution [5] := 0x06
|
||||
solution [6] := 0x81
|
||||
solution [7] := 0x6a
|
||||
solution [8] := 0xba
|
||||
solution [9] := 0x3e
|
||||
solution [10] := 0x25
|
||||
solution [11] := 0x71
|
||||
solution [12] := 0x78
|
||||
solution [13] := 0x50
|
||||
solution [14] := 0xc2
|
||||
solution [15] := 0x6c
|
||||
solution [16] := 0x9c
|
||||
solution [17] := 0xd0
|
||||
solution [18] := 0xd8
|
||||
solution [19] := 0x9d
|
||||
sha1.update (('a').code.to_natural_8)
|
||||
sha1.update (('b').code.to_natural_8)
|
||||
sha1.update (('c').code.to_natural_8)
|
||||
sha1.do_final (output, 0)
|
||||
correct := solution.same_items (output, 0, 0, 20)
|
||||
assert ("test abc", correct)
|
||||
end
|
||||
|
||||
test_empty
|
||||
local
|
||||
sha1: SHA1
|
||||
output: SPECIAL [NATURAL_8]
|
||||
solution: SPECIAL [NATURAL_8]
|
||||
correct: BOOLEAN
|
||||
do
|
||||
create sha1.make
|
||||
create output.make_filled (0, 20)
|
||||
create solution.make_filled (0, 20)
|
||||
solution [0] := 0xda
|
||||
solution [1] := 0x39
|
||||
solution [2] := 0xa3
|
||||
solution [3] := 0xee
|
||||
solution [4] := 0x5e
|
||||
solution [5] := 0x6b
|
||||
solution [6] := 0x4b
|
||||
solution [7] := 0x0d
|
||||
solution [8] := 0x32
|
||||
solution [9] := 0x55
|
||||
solution [10] := 0xbf
|
||||
solution [11] := 0xef
|
||||
solution [12] := 0x95
|
||||
solution [13] := 0x60
|
||||
solution [14] := 0x18
|
||||
solution [15] := 0x90
|
||||
solution [16] := 0xaf
|
||||
solution [17] := 0xd8
|
||||
solution [18] := 0x07
|
||||
solution [19] := 0x09
|
||||
sha1.do_final (output, 0)
|
||||
correct := solution.same_items (output, 0, 0, 20)
|
||||
assert ("test empty", correct)
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user