diff options
Diffstat (limited to '')
-rw-r--r-- | dom/base/test/meta_viewport/test_meta_viewport_change_name_among_multiple.html | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/dom/base/test/meta_viewport/test_meta_viewport_change_name_among_multiple.html b/dom/base/test/meta_viewport/test_meta_viewport_change_name_among_multiple.html new file mode 100644 index 0000000000..ca41577bbe --- /dev/null +++ b/dom/base/test/meta_viewport/test_meta_viewport_change_name_among_multiple.html @@ -0,0 +1,44 @@ +<!DOCTYPE HTML> +<html> +<head> + <meta charset="utf-8"> + <title>name attribute changes among multiple meta viewport tags</title> + <script src="/tests/SimpleTest/SimpleTest.js"></script> + <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/> + <meta name="viewport" content="width=980"> + <meta id="viewport" name="initial-name" content="width=device-width, initial-scale=1"> + <script src="viewport_helpers.js"></script> +</head> +<body> + <script> + "use strict"; + + add_task(async function change_name_attribute() { + await SpecialPowers.pushPrefEnv(scaleRatio(1.0)); + let viewport = document.getElementById("viewport"); + + let info = getViewportInfo(800, 480); + // The "width=980" content is a valid one. + fuzzeq(info.defaultZoom, 800/980, "initial scale is calculated based on width"); + is(info.minZoom, 0.25, "minimum scale defaults to the absolute minimum"); + is(info.maxZoom, 10, "maximum scale defaults to the absolute maximum"); + is(info.width, 980, "width is the default width"); + is(info.height, 588, "height is proportional to displayHeight"); + + // Now the second meta tag is a valid viewport. + viewport.setAttribute("name", "viewport"); + info = getViewportInfo(800, 480); + is(info.defaultZoom, 1, "initial zoom is 1"); + is(info.width, 800, "width should be 800"); + is(info.height, 480, "height should be 480"); + + // Now it's invalid again, but it's retained. + viewport.setAttribute("name", "other"); + info = getViewportInfo(800, 480); + is(info.defaultZoom, 1, "initial zoom is 1"); + is(info.width, 800, "width should be 800"); + is(info.height, 480, "height should be 480"); + }); + </script> +</body> +</html> |