Files
sdk/tests/web_2/internal/deferred/deferred_custom_loader_test.dart
T
Sigmund Cherem 912005267d [web] rename suite dart2js -> web.
Change-Id: I46be49b2effec3e38a3dc44cd45cfe736f77fa78
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/182680
Commit-Queue: Sigmund Cherem <sigmund@google.com>
Reviewed-by: Joshua Litt <joshualitt@google.com>
Reviewed-by: Nicholas Shahan <nshahan@google.com>
Reviewed-by: Stephen Adams <sra@google.com>
2021-02-04 23:11:32 +00:00

43 lines
1.0 KiB
Dart

// Copyright (c) 2016, 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.7
import 'package:async_helper/async_helper.dart';
import 'package:expect/expect.dart';
import 'dart:_foreign_helper' show JS;
import 'deferred_custom_loader_lib.dart' deferred as def;
void setup() {
JS('', r"""
(function(){
// In d8 we don't have any way to load the content of the file, so just use
// the preamble's loader.
if (!self.dartDeferredLibraryLoader) {
self.dartDeferredLibraryLoader = function(uri, success, error) {
var req = new XMLHttpRequest();
req.addEventListener("load", function() {
eval(this.responseText);
success();
});
req.open("GET", uri);
req.send();
};
}
})()
""");
}
runTest() async {
setup();
await def.loadLibrary();
Expect.equals(499, def.foo());
}
main() {
asyncStart();
runTest().then((_) => asyncEnd());
}