Skip to content

Commit 8a7dc6f

Browse files
committed
add test for typed array keys
1 parent db983e1 commit 8a7dc6f

File tree

1 file changed

+41
-1
lines changed

1 file changed

+41
-1
lines changed

tests/common/mod.rs

+41-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
use indexed_db::{Error, Factory};
22
use wasm_bindgen_test::wasm_bindgen_test;
33
use web_sys::{
4-
js_sys::{JsString, Number},
4+
js_sys::{JsString, Number, Uint8Array},
55
wasm_bindgen::JsValue,
66
};
77

@@ -326,3 +326,43 @@ async fn duplicate_insert_returns_proper_error_and_does_not_abort() {
326326
.await
327327
.unwrap();
328328
}
329+
330+
#[wasm_bindgen_test]
331+
async fn typed_array_keys() {
332+
let factory = Factory::<()>::get().unwrap();
333+
334+
let db = factory
335+
.open("db12", 1, |evt| async move {
336+
let db = evt.database();
337+
db.build_object_store("data").create()?;
338+
Ok(())
339+
})
340+
.await
341+
.unwrap();
342+
343+
db.transaction(&["data"])
344+
.rw()
345+
.run(|t| async move {
346+
let data = t.object_store("data")?;
347+
data.add_kv(&Uint8Array::from(&b"key1"[..]), &JsString::from("foo"))
348+
.await?;
349+
data.add_kv(&Uint8Array::from(&b"key2"[..]), &JsString::from("bar"))
350+
.await?;
351+
data.add_kv(&Uint8Array::from(&b"key3"[..]), &JsString::from("baz"))
352+
.await?;
353+
assert_eq!(
354+
2,
355+
data.count_in(Uint8Array::from(&b"key2"[..]).as_ref()..)
356+
.await?
357+
);
358+
assert_eq!(
359+
1,
360+
data.count_in(..Uint8Array::from(&b"key2"[..]).as_ref())
361+
.await?
362+
);
363+
364+
Ok(())
365+
})
366+
.await
367+
.unwrap();
368+
}

0 commit comments

Comments
 (0)