test_webgl_renderer_constant_rfp.html (1459B)
1 <!DOCTYPE html> 2 <meta charset="utf-8"> 3 <title>WebGL Renderer Constant with RFP - Renderer should be "Mozilla"</title> 4 <script src="/tests/SimpleTest/SimpleTest.js"></script> 5 <script> 6 /* global SimpleTest SpecialPowers */ 7 SimpleTest.waitForExplicitFinish(); 8 document.addEventListener("DOMContentLoaded", async function() { 9 // Enable RFP 10 await SpecialPowers.pushPrefEnv({ 11 set: [["privacy.resistFingerprinting", true], 12 ["privacy.fingerprintingProtection.overrides", "+WebGLRendererConstant"], 13 ["privacy.fingerprintingProtection", true]] 14 }); 15 16 let canvas = document.body.appendChild(document.createElement("canvas")); 17 if (!canvas) { 18 SimpleTest.ok(false, "Cannot create canvas"); 19 SimpleTest.finish(); 20 return; 21 } 22 23 let gl = canvas.getContext("webgl"); 24 if (!gl) { 25 SimpleTest.ok(false, "Cannot get WebGL context"); 26 SimpleTest.finish(); 27 return; 28 } 29 30 // Try to get the WEBGL_debug_renderer_info extension 31 let ext = gl.getExtension("WEBGL_debug_renderer_info"); 32 if (!ext) { 33 SimpleTest.ok(false, "WEBGL_debug_renderer_info extension should be available with RFP"); 34 SimpleTest.finish(); 35 return; 36 } 37 38 // With RFP enabled, WebGLRenderInfo takes precedence and the renderer should be "Mozilla" 39 let renderer = gl.getParameter(ext.UNMASKED_RENDERER_WEBGL); 40 41 SimpleTest.is(renderer, "Mozilla", 42 "UNMASKED_RENDERER_WEBGL should be 'Mozilla' with RFP enabled"); 43 44 SimpleTest.finish(); 45 }); 46 </script>