<!DOCTYPE html>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script>
'use strict';

test(t => {
  let data_view = new DataView(Uint8Array.from([1, 2, 3, 4]).buffer);
  let result = new USBInTransferResult('ok', data_view);
  assert_equals(result.status, 'ok');
  assert_equals(result.data.getInt32(0), 16909060);
}, 'Can construct a USBInTransferResult');

test(t => {
  let result = new USBInTransferResult('stall');
  assert_equals(result.status, 'stall');
  assert_equals(result.data, null);

  result = new USBInTransferResult('babble', null);
  assert_equals(result.status, 'babble');
  assert_equals(result.data, null);
}, 'Can construct a USBInTransferResult without a DataView');

test(t => {
  assert_throws(TypeError(), () => new USBInTransferResult('invalid_status'));
}, 'Cannot construct USBInTransferResult with an invalid status');

test(t => {
  assert_throws(TypeError(), () => new USBInTransferResult());
}, 'Cannot construct USBInTransferResult without a status');
</script>
