Skip to content

Commit 73cd1c7

Browse files
authored
Update tests and overrides about canvas rendering contexts (#1633)
1 parent eb1d628 commit 73cd1c7

File tree

2 files changed

+69
-22
lines changed

2 files changed

+69
-22
lines changed

custom/overrides.json

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1168,5 +1168,8 @@
11681168
["api.Location.replace", "deno", "*", false],
11691169
["api.Location.search", "deno", "*", false],
11701170
["api.Location.toString", "deno", "*", false],
1171-
["api.Window.location", "deno", "*", false]
1171+
["api.Window.location", "deno", "*", false],
1172+
"Collector reporting earlier version than confirmed in https://bugzil.la/1887729",
1173+
["api.OffscreenCanvas.contextlost_event", "firefox", "105-124", false],
1174+
["api.OffscreenCanvas.contextrestored_event", "firefox", "105-124", false]
11721175
]

custom/tests.yaml

Lines changed: 65 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -2477,8 +2477,12 @@ api:
24772477
if (!(instance && instance.getContext)) {
24782478
return {result: false, message: 'instance.getContext is not defined'};
24792479
}
2480-
var ctx = instance.getContext('bitmaprenderer');
2481-
return !!ctx;
2480+
try {
2481+
var ctx = instance.getContext('bitmaprenderer');
2482+
return !!ctx;
2483+
} catch(e) {
2484+
return {result: false, message: e.message};
2485+
}
24822486
bitmaprenderer_context.options_alpha_parameter: |-
24832487
if (!(instance && instance.getContext)) {
24842488
return {result: false, message: 'instance.getContext is not defined'};
@@ -2491,8 +2495,12 @@ api:
24912495
if (!(instance && instance.getContext)) {
24922496
return {result: false, message: 'instance.getContext is not defined'};
24932497
}
2494-
var ctx = instance.getContext('webgl');
2495-
return !!ctx;
2498+
try {
2499+
var ctx = instance.getContext('webgl');
2500+
return !!ctx;
2501+
} catch(e) {
2502+
return {result: false, message: e.message};
2503+
}
24962504
webgl_context.options_alpha_parameter: |-
24972505
if (!(instance && instance.getContext)) {
24982506
return {result: false, message: 'instance.getContext is not defined'};
@@ -2529,8 +2537,12 @@ api:
25292537
if (!(instance && instance.getContext)) {
25302538
return {result: false, message: 'instance.getContext is not defined'};
25312539
}
2532-
var ctx = instance.getContext('webgl2');
2533-
return !!ctx;
2540+
try {
2541+
var ctx = instance.getContext('webgl2');
2542+
return !!ctx;
2543+
} catch(e) {
2544+
return {result: false, message: e.message};
2545+
}
25342546
webgl2_context.options_alpha_parameter: |-
25352547
if (!(instance && instance.getContext)) {
25362548
return {result: false, message: 'instance.getContext is not defined'};
@@ -2567,8 +2579,12 @@ api:
25672579
if (!(instance && instance.getContext)) {
25682580
return {result: false, message: 'instance.getContext is not defined'};
25692581
}
2570-
var ctx = instance.getContext('2d');
2571-
return !!ctx;
2582+
try {
2583+
var ctx = instance.getContext('2d');
2584+
return !!ctx;
2585+
} catch(e) {
2586+
return {result: false, message: e.message};
2587+
}
25722588
2d_context.options_alpha_parameter: |-
25732589
if (!(instance && instance.getContext)) {
25742590
return {result: false, message: 'instance.getContext is not defined'};
@@ -2607,8 +2623,12 @@ api:
26072623
if (!(instance && instance.getContext)) {
26082624
return {result: false, message: 'instance.getContext is not defined'};
26092625
}
2610-
var ctx = instance.getContext('webgpu');
2611-
return !!ctx;
2626+
try {
2627+
var ctx = instance.getContext('webgpu');
2628+
return !!ctx;
2629+
} catch(e) {
2630+
return {result: false, message: e.message};
2631+
}
26122632
HTMLCollection:
26132633
__base: var instance = document.forms;
26142634
HTMLContentElement:
@@ -3612,39 +3632,63 @@ api:
36123632
};
36133633
var instance = reusableInstances.webGL2.getExtension('OVR_multiview2');
36143634
OffscreenCanvas:
3615-
__base: var instance = new OffscreenCanvas(1024, 1024);
3635+
__base: |-
3636+
if (!('OffscreenCanvas' in self)) {
3637+
return {result: false, message: 'OffscreenCanvas is not defined'}
3638+
}
3639+
var instance = new OffscreenCanvas(1024, 1024);
36163640
getContext:
36173641
__additional:
36183642
bitmaprenderer_context: |-
36193643
if (!(instance && instance.getContext)) {
36203644
return {result: false, message: 'instance.getContext is not defined'};
36213645
}
3622-
var ctx = instance.getContext('bitmaprenderer');
3623-
return !!ctx;
3646+
try {
3647+
var ctx = instance.getContext('bitmaprenderer');
3648+
return !!ctx;
3649+
} catch(e) {
3650+
return {result: false, message: e.message};
3651+
}
36243652
webgl_context: |-
36253653
if (!(instance && instance.getContext)) {
36263654
return {result: false, message: 'instance.getContext is not defined'};
36273655
}
3628-
var ctx = instance.getContext('webgl');
3629-
return !!ctx;
3656+
try {
3657+
var ctx = instance.getContext('webgl');
3658+
return !!ctx;
3659+
} catch(e) {
3660+
return {result: false, message: e.message};
3661+
}
36303662
webgl2_context: |-
36313663
if (!(instance && instance.getContext)) {
36323664
return {result: false, message: 'instance.getContext is not defined'};
36333665
}
3634-
var ctx = instance.getContext('webgl2');
3635-
return !!ctx;
3666+
try {
3667+
var ctx = instance.getContext('webgl2');
3668+
return !!ctx;
3669+
} catch(e) {
3670+
return {result: false, message: e.message};
3671+
}
36363672
webgpu_context: |-
36373673
if (!(instance && instance.getContext)) {
36383674
return {result: false, message: 'instance.getContext is not defined'};
36393675
}
3640-
var ctx = instance.getContext('webgpu');
3641-
return !!ctx;
3676+
try {
3677+
var ctx = instance.getContext('webgpu');
3678+
return !!ctx;
3679+
} catch(e) {
3680+
return {result: false, message: e.message};
3681+
}
36423682
2d_context: |-
36433683
if (!(instance && instance.getContext)) {
36443684
return {result: false, message: 'instance.getContext is not defined'};
36453685
}
3646-
var ctx = instance.getContext('2d');
3647-
return !!ctx;
3686+
try {
3687+
var ctx = instance.getContext('2d');
3688+
return !!ctx;
3689+
} catch(e) {
3690+
return {result: false, message: e.message};
3691+
}
36483692
__additional:
36493693
convertToBlob.option_type_parameter_webp: |-
36503694
instance.getContext('2d');

0 commit comments

Comments
 (0)