@@ -81,6 +81,14 @@ pub fn get<S: AsRef<str>>(extension: S) -> Option<HasherFn> {
81
81
mod tests {
82
82
use super :: * ;
83
83
84
+ fn test_hasher ( extension : & str , expected : & str ) -> Result < ( ) > {
85
+ let hasher = get ( extension) . unwrap ( ) ;
86
+ let data = vec ! [ 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 0 ] ;
87
+ let hash = hasher ( & data) ?;
88
+ assert_eq ! ( expected, hash) ;
89
+ Ok ( ( ) )
90
+ }
91
+
84
92
#[ test]
85
93
fn test_register ( ) -> Result < ( ) > {
86
94
let extension = "sha256" ;
@@ -91,92 +99,57 @@ mod tests {
91
99
register ( extension, sha2_256:: hash) ;
92
100
assert_eq ! ( hashers, REGISTRY . lock( ) . unwrap( ) . hashers. len( ) ) ;
93
101
94
- let hasher = get ( extension) . unwrap ( ) ;
95
- let data = vec ! [ 1 , 2 , 3 ] ;
96
- let hash = hasher ( & data) ?;
97
-
98
- assert_eq ! (
99
- "039058c6f2c0cb492c533b0a4d14ef77cc0f78abccced5287d84a1a2011cfb81" ,
100
- hash
101
- ) ;
102
- Ok ( ( ) )
102
+ test_hasher (
103
+ extension,
104
+ "9a89c68c4c5e28b8c4a5567673d462fff515db46116f9900624d09c474f593fb" ,
105
+ )
103
106
}
104
107
105
108
#[ test]
106
109
fn test_sha2_256 ( ) -> Result < ( ) > {
107
- let hasher = get ( "sha256" ) . unwrap ( ) ;
108
- let data = vec ! [ 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 0 ] ;
109
- let hash = hasher ( & data) ?;
110
-
111
- assert_eq ! (
110
+ test_hasher (
111
+ "sha256" ,
112
112
"9a89c68c4c5e28b8c4a5567673d462fff515db46116f9900624d09c474f593fb" ,
113
- hash
114
- ) ;
115
- Ok ( ( ) )
113
+ )
116
114
}
117
115
118
116
#[ test]
119
117
fn test_sha2_512 ( ) -> Result < ( ) > {
120
- let hasher = get ( "sha512" ) . unwrap ( ) ;
121
- let data = vec ! [ 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 0 ] ;
122
- let hash = hasher ( & data) ?;
123
-
124
- assert_eq ! (
118
+ test_hasher (
119
+ "sha512" ,
125
120
"3ad3f36979450d4f53366244ecf1010f4f9121d6888285ff14104fd5aded85d48aa171bf1e33a112602f92b7a7088b298789012fb87b9056321241a19fb74e0b" ,
126
- hash
127
- ) ;
128
- Ok ( ( ) )
121
+ )
129
122
}
130
123
131
124
#[ test]
132
125
fn test_sha3_256 ( ) -> Result < ( ) > {
133
- let hasher = get ( "sha3-256" ) . unwrap ( ) ;
134
- let data = vec ! [ 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 0 ] ;
135
- let hash = hasher ( & data) ?;
136
-
137
- assert_eq ! (
126
+ test_hasher (
127
+ "sha3-256" ,
138
128
"c0188232190e0427fc9cc78597221c76c799528660889bd6ce1f3563148ff84d" ,
139
- hash
140
- ) ;
141
- Ok ( ( ) )
129
+ )
142
130
}
143
131
144
132
#[ test]
145
133
fn test_sha3_512 ( ) -> Result < ( ) > {
146
- let hasher = get ( "sha3-512" ) . unwrap ( ) ;
147
- let data = vec ! [ 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 0 ] ;
148
- let hash = hasher ( & data) ?;
149
-
150
- assert_eq ! (
134
+ test_hasher (
135
+ "sha3-512" ,
151
136
"9429fc1f9772cc1d8039fe75cc1b033cd60f0ec4face0f8a514d25b0649ba8a5954b6c7a41cc3697a56db3ff321475be1fa14b70c7eb78fec6ce62dbfc54c9d3" ,
152
- hash
153
- ) ;
154
- Ok ( ( ) )
137
+ )
155
138
}
156
139
157
140
#[ test]
158
141
fn test_blake2s_256 ( ) -> Result < ( ) > {
159
- let hasher = get ( "blake2s" ) . unwrap ( ) ;
160
- let data = vec ! [ 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 0 ] ;
161
- let hash = hasher ( & data) ?;
162
-
163
- assert_eq ! (
142
+ test_hasher (
143
+ "blake2s" ,
164
144
"7125921e06071710350390fe902856dbea366a5d6f5ee26c18e741143ac80061" ,
165
- hash
166
- ) ;
167
- Ok ( ( ) )
145
+ )
168
146
}
169
147
170
148
#[ test]
171
- fn test_blake2s_512 ( ) -> Result < ( ) > {
172
- let hasher = get ( "blake2s" ) . unwrap ( ) ;
173
- let data = vec ! [ 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 0 ] ;
174
- let hash = hasher ( & data) ?;
175
-
176
- assert_eq ! (
177
- "7125921e06071710350390fe902856dbea366a5d6f5ee26c18e741143ac80061" ,
178
- hash
179
- ) ;
180
- Ok ( ( ) )
149
+ fn test_blake2b_512 ( ) -> Result < ( ) > {
150
+ test_hasher (
151
+ "blake2b" ,
152
+ "67767f1cab415502dcceec9f099fb84539b1c73c5ebdcfe1bb8ca7411e3b6cb33e304f49222edac9bdaa74129e9e13f11f215b8560f9081f0e8f1f869162bf46" ,
153
+ )
181
154
}
182
155
}
0 commit comments