ArrayBuffer.rs 1021 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. use js_sys::*;
  2. use wasm_bindgen::JsCast;
  3. use wasm_bindgen::JsValue;
  4. use wasm_bindgen_test::*;
  5. #[wasm_bindgen_test]
  6. fn new() {
  7. let x = ArrayBuffer::new(42);
  8. let y: JsValue = x.into();
  9. assert!(y.is_object());
  10. }
  11. #[wasm_bindgen_test]
  12. fn byte_length() {
  13. let buf = ArrayBuffer::new(42);
  14. assert_eq!(buf.byte_length(), 42);
  15. }
  16. #[wasm_bindgen_test]
  17. fn is_view() {
  18. let x = Uint8Array::new(&JsValue::from(42));
  19. assert!(ArrayBuffer::is_view(&JsValue::from(x)));
  20. }
  21. #[wasm_bindgen_test]
  22. fn slice() {
  23. let buf = ArrayBuffer::new(4);
  24. let slice = buf.slice(2);
  25. assert!(JsValue::from(slice).is_object());
  26. }
  27. #[wasm_bindgen_test]
  28. fn slice_with_end() {
  29. let buf = ArrayBuffer::new(4);
  30. let slice = buf.slice_with_end(1, 2);
  31. assert!(JsValue::from(slice).is_object());
  32. }
  33. #[wasm_bindgen_test]
  34. fn arraybuffer_inheritance() {
  35. let buf = ArrayBuffer::new(4);
  36. assert!(buf.is_instance_of::<ArrayBuffer>());
  37. assert!(buf.is_instance_of::<Object>());
  38. let _: &Object = buf.as_ref();
  39. }