flutter/dev/integration_tests/web/lib/web_resources_cdn_test.dart
Michael Goderbauer 5491c8c146
Auto-format Framework (#160545)
This auto-formats all *.dart files in the repository outside of the
`engine` subdirectory and enforces that these files stay formatted with
a presubmit check.

**Reviewers:** Please carefully review all the commits except for the
one titled "formatted". The "formatted" commit was auto-generated by
running `dev/tools/format.sh -a -f`. The other commits were hand-crafted
to prepare the repo for the formatting change. I recommend reviewing the
commits one-by-one via the "Commits" tab and avoiding Github's "Files
changed" tab as it will likely slow down your browser because of the
size of this PR.

---------

Co-authored-by: Kate Lovett <katelovett@google.com>
Co-authored-by: LongCatIsLooong <31859944+LongCatIsLooong@users.noreply.github.com>
2024-12-19 20:06:21 +00:00

55 lines
1.3 KiB
Dart

// Copyright 2014 The Flutter Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
import 'dart:js_interop';
import 'package:web/web.dart' as web;
Future<void> main() async {
if (await testFetchResources()) {
print('--- TEST SUCCEEDED ---');
} else {
print('--- TEST FAILED ---');
}
}
// Attempt to load CanvasKit resources hosted on gstatic.
Future<bool> testFetchResources() async {
const String engineVersion = String.fromEnvironment('TEST_FLUTTER_ENGINE_VERSION');
if (engineVersion.isEmpty) {
return false;
}
try {
final web.Response response =
await web.window
.fetch(
'https://www.gstatic.com/flutter-canvaskit/$engineVersion/canvaskit.js'.toJS,
web.RequestInit(method: 'GET'),
)
.toDart;
if (!response.ok) {
return false;
}
} catch (err) {
print(err);
return false;
}
try {
final web.Response response =
await web.window
.fetch(
'https://www.gstatic.com/flutter-canvaskit/$engineVersion/canvaskit.wasm'.toJS,
web.RequestInit(method: 'GET'),
)
.toDart;
if (!response.ok) {
return false;
}
} catch (err) {
print(err);
return false;
}
return true;
}