Skip to content

Commit 32f1e6d

Browse files
authored
[web] Use CanvasKit to run tests under engine/ (flutter#54786)
Let's start running the tests under `engine/` using the CanvasKit renderer instead of HTML. This PR also: - Moves several tests from `engine/` to `html/` since they were testing html-specific stuff. - Deletes `test/canvaskit/semantics_test.dart` since it's just an "alias" for `test/engine/semantics/semantics_test.dart`.
1 parent 9b51e30 commit 32f1e6d

37 files changed

+238
-245
lines changed

ci/builders/linux_web_engine.json

+46-46
Original file line numberDiff line numberDiff line change
@@ -70,19 +70,19 @@
7070
}
7171
},
7272
{
73-
"name": "web_tests/test_bundles/dart2js-html-engine",
73+
"name": "web_tests/test_bundles/dart2js-html-html",
7474
"drone_dimensions": [
7575
"device_type=none",
7676
"os=Linux"
7777
],
7878
"generators": {
7979
"tasks": [
8080
{
81-
"name": "compile bundle dart2js-html-engine",
81+
"name": "compile bundle dart2js-html-html",
8282
"parameters": [
8383
"test",
8484
"--compile",
85-
"--bundle=dart2js-html-engine"
85+
"--bundle=dart2js-html-html"
8686
],
8787
"scripts": [
8888
"flutter/lib/web_ui/dev/felt"
@@ -92,19 +92,19 @@
9292
}
9393
},
9494
{
95-
"name": "web_tests/test_bundles/dart2js-html-html",
95+
"name": "web_tests/test_bundles/dart2js-html-ui",
9696
"drone_dimensions": [
9797
"device_type=none",
9898
"os=Linux"
9999
],
100100
"generators": {
101101
"tasks": [
102102
{
103-
"name": "compile bundle dart2js-html-html",
103+
"name": "compile bundle dart2js-html-ui",
104104
"parameters": [
105105
"test",
106106
"--compile",
107-
"--bundle=dart2js-html-html"
107+
"--bundle=dart2js-html-ui"
108108
],
109109
"scripts": [
110110
"flutter/lib/web_ui/dev/felt"
@@ -114,19 +114,19 @@
114114
}
115115
},
116116
{
117-
"name": "web_tests/test_bundles/dart2js-html-ui",
117+
"name": "web_tests/test_bundles/dart2js-canvaskit-engine",
118118
"drone_dimensions": [
119119
"device_type=none",
120120
"os=Linux"
121121
],
122122
"generators": {
123123
"tasks": [
124124
{
125-
"name": "compile bundle dart2js-html-ui",
125+
"name": "compile bundle dart2js-canvaskit-engine",
126126
"parameters": [
127127
"test",
128128
"--compile",
129-
"--bundle=dart2js-html-ui"
129+
"--bundle=dart2js-canvaskit-engine"
130130
],
131131
"scripts": [
132132
"flutter/lib/web_ui/dev/felt"
@@ -180,19 +180,19 @@
180180
}
181181
},
182182
{
183-
"name": "web_tests/test_bundles/dart2wasm-html-engine",
183+
"name": "web_tests/test_bundles/dart2wasm-canvaskit-engine",
184184
"drone_dimensions": [
185185
"device_type=none",
186186
"os=Linux"
187187
],
188188
"generators": {
189189
"tasks": [
190190
{
191-
"name": "compile bundle dart2wasm-html-engine",
191+
"name": "compile bundle dart2wasm-canvaskit-engine",
192192
"parameters": [
193193
"test",
194194
"--compile",
195-
"--bundle=dart2wasm-html-engine"
195+
"--bundle=dart2wasm-canvaskit-engine"
196196
],
197197
"scripts": [
198198
"flutter/lib/web_ui/dev/felt"
@@ -260,12 +260,12 @@
260260
},
261261
"dependencies": [
262262
"web_tests/artifacts",
263-
"web_tests/test_bundles/dart2js-html-engine",
264263
"web_tests/test_bundles/dart2js-html-html",
265264
"web_tests/test_bundles/dart2js-html-ui",
265+
"web_tests/test_bundles/dart2js-canvaskit-engine",
266266
"web_tests/test_bundles/dart2js-canvaskit-canvaskit",
267267
"web_tests/test_bundles/dart2js-canvaskit-ui",
268-
"web_tests/test_bundles/dart2wasm-html-engine",
268+
"web_tests/test_bundles/dart2wasm-canvaskit-engine",
269269
"web_tests/test_bundles/dart2wasm-skwasm-ui",
270270
"web_tests/test_bundles/fallbacks"
271271
],
@@ -281,29 +281,29 @@
281281
],
282282
"tasks": [
283283
{
284-
"name": "run suite chrome-dart2js-html-engine",
284+
"name": "run suite chrome-dart2js-html-html",
285285
"parameters": [
286286
"test",
287287
"--run",
288-
"--suite=chrome-dart2js-html-engine"
288+
"--suite=chrome-dart2js-html-html"
289289
],
290290
"script": "flutter/lib/web_ui/dev/felt"
291291
},
292292
{
293-
"name": "run suite chrome-dart2js-html-html",
293+
"name": "run suite chrome-dart2js-html-ui",
294294
"parameters": [
295295
"test",
296296
"--run",
297-
"--suite=chrome-dart2js-html-html"
297+
"--suite=chrome-dart2js-html-ui"
298298
],
299299
"script": "flutter/lib/web_ui/dev/felt"
300300
},
301301
{
302-
"name": "run suite chrome-dart2js-html-ui",
302+
"name": "run suite chrome-dart2js-canvaskit-engine",
303303
"parameters": [
304304
"test",
305305
"--run",
306-
"--suite=chrome-dart2js-html-ui"
306+
"--suite=chrome-dart2js-canvaskit-engine"
307307
],
308308
"script": "flutter/lib/web_ui/dev/felt"
309309
},
@@ -344,11 +344,11 @@
344344
"script": "flutter/lib/web_ui/dev/felt"
345345
},
346346
{
347-
"name": "run suite chrome-dart2wasm-html-engine",
347+
"name": "run suite chrome-dart2wasm-canvaskit-engine",
348348
"parameters": [
349349
"test",
350350
"--run",
351-
"--suite=chrome-dart2wasm-html-engine"
351+
"--suite=chrome-dart2wasm-canvaskit-engine"
352352
],
353353
"script": "flutter/lib/web_ui/dev/felt"
354354
},
@@ -412,9 +412,9 @@
412412
},
413413
"dependencies": [
414414
"web_tests/artifacts",
415-
"web_tests/test_bundles/dart2js-html-engine",
416415
"web_tests/test_bundles/dart2js-html-html",
417416
"web_tests/test_bundles/dart2js-html-ui",
417+
"web_tests/test_bundles/dart2js-canvaskit-engine",
418418
"web_tests/test_bundles/dart2js-canvaskit-canvaskit",
419419
"web_tests/test_bundles/dart2js-canvaskit-ui",
420420
"web_tests/test_bundles/fallbacks"
@@ -431,29 +431,29 @@
431431
],
432432
"tasks": [
433433
{
434-
"name": "run suite firefox-dart2js-html-engine",
434+
"name": "run suite firefox-dart2js-html-html",
435435
"parameters": [
436436
"test",
437437
"--run",
438-
"--suite=firefox-dart2js-html-engine"
438+
"--suite=firefox-dart2js-html-html"
439439
],
440440
"script": "flutter/lib/web_ui/dev/felt"
441441
},
442442
{
443-
"name": "run suite firefox-dart2js-html-html",
443+
"name": "run suite firefox-dart2js-html-ui",
444444
"parameters": [
445445
"test",
446446
"--run",
447-
"--suite=firefox-dart2js-html-html"
447+
"--suite=firefox-dart2js-html-ui"
448448
],
449449
"script": "flutter/lib/web_ui/dev/felt"
450450
},
451451
{
452-
"name": "run suite firefox-dart2js-html-ui",
452+
"name": "run suite firefox-dart2js-canvaskit-engine",
453453
"parameters": [
454454
"test",
455455
"--run",
456-
"--suite=firefox-dart2js-html-ui"
456+
"--suite=firefox-dart2js-canvaskit-engine"
457457
],
458458
"script": "flutter/lib/web_ui/dev/felt"
459459
},
@@ -500,9 +500,9 @@
500500
},
501501
"dependencies": [
502502
"web_tests/artifacts",
503-
"web_tests/test_bundles/dart2js-html-engine",
504503
"web_tests/test_bundles/dart2js-html-html",
505504
"web_tests/test_bundles/dart2js-html-ui",
505+
"web_tests/test_bundles/dart2js-canvaskit-engine",
506506
"web_tests/test_bundles/dart2js-canvaskit-canvaskit",
507507
"web_tests/test_bundles/dart2js-canvaskit-ui",
508508
"web_tests/test_bundles/fallbacks"
@@ -515,29 +515,29 @@
515515
],
516516
"tasks": [
517517
{
518-
"name": "run suite safari-dart2js-html-engine",
518+
"name": "run suite safari-dart2js-html-html",
519519
"parameters": [
520520
"test",
521521
"--run",
522-
"--suite=safari-dart2js-html-engine"
522+
"--suite=safari-dart2js-html-html"
523523
],
524524
"script": "flutter/lib/web_ui/dev/felt"
525525
},
526526
{
527-
"name": "run suite safari-dart2js-html-html",
527+
"name": "run suite safari-dart2js-html-ui",
528528
"parameters": [
529529
"test",
530530
"--run",
531-
"--suite=safari-dart2js-html-html"
531+
"--suite=safari-dart2js-html-ui"
532532
],
533533
"script": "flutter/lib/web_ui/dev/felt"
534534
},
535535
{
536-
"name": "run suite safari-dart2js-html-ui",
536+
"name": "run suite safari-dart2js-canvaskit-engine",
537537
"parameters": [
538538
"test",
539539
"--run",
540-
"--suite=safari-dart2js-html-ui"
540+
"--suite=safari-dart2js-canvaskit-engine"
541541
],
542542
"script": "flutter/lib/web_ui/dev/felt"
543543
},
@@ -583,12 +583,12 @@
583583
},
584584
"dependencies": [
585585
"web_tests/artifacts",
586-
"web_tests/test_bundles/dart2js-html-engine",
587586
"web_tests/test_bundles/dart2js-html-html",
588587
"web_tests/test_bundles/dart2js-html-ui",
588+
"web_tests/test_bundles/dart2js-canvaskit-engine",
589589
"web_tests/test_bundles/dart2js-canvaskit-canvaskit",
590590
"web_tests/test_bundles/dart2js-canvaskit-ui",
591-
"web_tests/test_bundles/dart2wasm-html-engine",
591+
"web_tests/test_bundles/dart2wasm-canvaskit-engine",
592592
"web_tests/test_bundles/dart2wasm-skwasm-ui",
593593
"web_tests/test_bundles/fallbacks"
594594
],
@@ -604,29 +604,29 @@
604604
],
605605
"tasks": [
606606
{
607-
"name": "run suite chrome-dart2js-html-engine",
607+
"name": "run suite chrome-dart2js-html-html",
608608
"parameters": [
609609
"test",
610610
"--run",
611-
"--suite=chrome-dart2js-html-engine"
611+
"--suite=chrome-dart2js-html-html"
612612
],
613613
"script": "flutter/lib/web_ui/dev/felt"
614614
},
615615
{
616-
"name": "run suite chrome-dart2js-html-html",
616+
"name": "run suite chrome-dart2js-html-ui",
617617
"parameters": [
618618
"test",
619619
"--run",
620-
"--suite=chrome-dart2js-html-html"
620+
"--suite=chrome-dart2js-html-ui"
621621
],
622622
"script": "flutter/lib/web_ui/dev/felt"
623623
},
624624
{
625-
"name": "run suite chrome-dart2js-html-ui",
625+
"name": "run suite chrome-dart2js-canvaskit-engine",
626626
"parameters": [
627627
"test",
628628
"--run",
629-
"--suite=chrome-dart2js-html-ui"
629+
"--suite=chrome-dart2js-canvaskit-engine"
630630
],
631631
"script": "flutter/lib/web_ui/dev/felt"
632632
},
@@ -667,11 +667,11 @@
667667
"script": "flutter/lib/web_ui/dev/felt"
668668
},
669669
{
670-
"name": "run suite chrome-dart2wasm-html-engine",
670+
"name": "run suite chrome-dart2wasm-canvaskit-engine",
671671
"parameters": [
672672
"test",
673673
"--run",
674-
"--suite=chrome-dart2wasm-html-engine"
674+
"--suite=chrome-dart2wasm-canvaskit-engine"
675675
],
676676
"script": "flutter/lib/web_ui/dev/felt"
677677
},

lib/web_ui/dev/test_platform.dart

+1-1
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,7 @@ class BrowserPlatform extends PlatformPlugin {
8989
.add(_createSourceHandler())
9090

9191
// Serves files from the root of web_ui. Some tests download assets that are embedded
92-
// directly in the test folder, such as test/engine/image/sample_image1.png etc
92+
// directly in the test folder, such as test/html/image/sample_image1.png etc
9393
.add(createStaticHandler(env.environment.webUiRootDir.path))
9494

9595
// Serves absolute package URLs (i.e. not /packages/* but /Users/user/*/hosted/pub.dartlang.org/*).

lib/web_ui/test/canvaskit/semantics_test.dart

-29
This file was deleted.

lib/web_ui/test/common/test_initialization.dart

+17
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,23 @@ void setUpUnitTests({
5151
});
5252
}
5353

54+
void setUpImplicitView() {
55+
late engine.EngineFlutterWindow myWindow;
56+
57+
final engine.EnginePlatformDispatcher dispatcher = engine.EnginePlatformDispatcher.instance;
58+
59+
setUp(() {
60+
myWindow = engine.EngineFlutterView.implicit(dispatcher, null);
61+
dispatcher.viewManager.registerView(myWindow);
62+
});
63+
64+
tearDown(() async {
65+
dispatcher.viewManager.unregisterView(myWindow.viewId);
66+
await myWindow.resetHistory();
67+
myWindow.dispose();
68+
});
69+
}
70+
5471
Future<void> bootstrapAndRunApp({bool withImplicitView = false}) async {
5572
final Completer<void> completer = Completer<void>();
5673
await ui_web.bootstrapEngine(runApp: () => completer.complete());

lib/web_ui/test/engine/clipboard_test.dart

+1-1
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ void main() {
1616
}
1717

1818
Future<void> testMain() async {
19-
setUpUnitTests();
19+
setUpImplicitView();
2020
group('message handler', () {
2121
const String testText = 'test text';
2222

0 commit comments

Comments
 (0)