| // META: global=window |
| // META: script=/resources/testdriver.js |
| // META: script=/resources/testdriver-vendor.js |
| "use strict"; |
| |
| promise_test(async testCase => { |
| assert_equals(typeof self.getScreens, "function"); |
| }, "self.getScreens is present"); |
| |
| promise_test(async testCase => { |
| await test_driver.set_permission({name: "window-placement"}, "granted"); |
| const screens = await self.getScreens(); |
| assert_greater_than(screens.length, 0); |
| |
| assert_equals(typeof screens[0].availWidth, "number"); |
| assert_equals(typeof screens[0].availHeight, "number"); |
| assert_equals(typeof screens[0].width, "number"); |
| assert_equals(typeof screens[0].height, "number"); |
| assert_equals(typeof screens[0].colorDepth, "number"); |
| assert_equals(typeof screens[0].pixelDepth, "number"); |
| |
| assert_equals(typeof screens[0].availLeft, "number"); |
| assert_equals(typeof screens[0].availTop, "number"); |
| assert_equals(typeof screens[0].left, "number"); |
| assert_equals(typeof screens[0].top, "number"); |
| assert_equals(typeof screens[0].orientation, "object"); |
| |
| assert_equals(typeof screens[0].primary, "boolean"); |
| assert_equals(typeof screens[0].internal, "boolean"); |
| assert_equals(typeof screens[0].scaleFactor, "number"); |
| assert_equals(typeof screens[0].id, "string"); |
| assert_equals(typeof screens[0].touchSupport, "boolean"); |
| }, "self.getScreens returns at least 1 Screen with permission granted"); |
| |
| promise_test(async testCase => { |
| await test_driver.set_permission({name: 'window-placement'}, 'denied'); |
| const screens = await self.getScreens(); |
| assert_equals(screens.length, 0); |
| }, 'self.getScreens returns no Screen objects with permission denied'); |