Skip to content

Commit 735609e

Browse files
authored
test(crypto): test timingSafeEqual() in handling DataViews (denoland#5268)
1 parent c9a4eff commit 735609e

File tree

1 file changed

+30
-0
lines changed

1 file changed

+30
-0
lines changed

crypto/timing_safe_equal_test.ts

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -164,3 +164,33 @@ Deno.test({
164164
assert(!timingSafeEqual(ua, ub));
165165
},
166166
});
167+
168+
Deno.test({
169+
name: "timingSafeEqual() compares equal DataViews",
170+
fn() {
171+
const a = new ArrayBuffer(2);
172+
const va = new DataView(a);
173+
va.setUint8(0, 212);
174+
va.setUint8(1, 213);
175+
const b = new ArrayBuffer(2);
176+
const vb = new DataView(b);
177+
vb.setUint8(0, 212);
178+
vb.setUint8(1, 213);
179+
assert(timingSafeEqual(va, vb));
180+
},
181+
});
182+
183+
Deno.test({
184+
name: "timingSafeEqual() compares unequal DataViews",
185+
fn() {
186+
const a = new ArrayBuffer(2);
187+
const va = new DataView(a);
188+
va.setUint8(0, 212);
189+
va.setUint8(1, 213);
190+
const b = new ArrayBuffer(2);
191+
const vb = new DataView(b);
192+
vb.setUint8(0, 212);
193+
vb.setUint8(1, 212);
194+
assert(!timingSafeEqual(va, vb));
195+
},
196+
});

0 commit comments

Comments
 (0)