blob: 01006a2b2f009bb694d8ae2241ededc62396e848 [file] [log] [blame]
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
// @dart = 2.9
library TransferableTest;
import 'dart:async';
import 'dart:html';
import 'dart:typed_data';
import 'package:expect/minitest.dart';
var isByteBuffer = predicate((x) => x is ByteBuffer, 'is an ByteBuffer');
Future testTransferableTest() {
final buffer = (new Float32List(3)).buffer;
window.postMessage(
{'id': 'transferable data', 'buffer': buffer}, '*', [buffer]);
return window.onMessage.firstWhere((e) {
return e.data is Map && e.data['id'] == 'transferable data';
}).then((messageEvent) {
expect(messageEvent.data['buffer'], isByteBuffer);
});
}
main() async {
if (Platform.supportsTypedData) {
await testTransferableTest();
}
}