mirror of
				https://github.com/mozilla/gecko-dev.git
				synced 2025-10-31 08:18:54 +02:00 
			
		
		
		
	
		
			
				
	
	
		
			59 lines
		
	
	
	
		
			2.3 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			59 lines
		
	
	
	
		
			2.3 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| /* This Source Code Form is subject to the terms of the Mozilla Public
 | |
|  * License, v. 2.0. If a copy of the MPL was not distributed with this
 | |
|  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
 | |
| 
 | |
| "use strict";
 | |
| 
 | |
| /* import-globals-from ../../mochitest/role.js */
 | |
| loadScripts({ name: "role.js", dir: MOCHITESTS_DIR });
 | |
| 
 | |
| /**
 | |
|  * Test that popover gets a minimum role.
 | |
|  */
 | |
| addAccessibleTask(
 | |
|   `
 | |
| <div id="generic" popover>generic</div>
 | |
| <div id="alert" role="alert" popover>alert</div>
 | |
| <blockquote id="blockquote" popover>blockquote</div>
 | |
|   `,
 | |
|   async function testPopover(browser, docAcc) {
 | |
|     let generic = findAccessibleChildByID(docAcc, "generic");
 | |
|     ok(!generic, "generic doesn't have an Accessible");
 | |
|     info("Showing generic");
 | |
|     let shown = waitForEvent(EVENT_SHOW, "generic");
 | |
|     await invokeContentTask(browser, [], () => {
 | |
|       content.document.getElementById("generic").showPopover();
 | |
|     });
 | |
|     generic = (await shown).accessible;
 | |
|     testRole(generic, ROLE_GROUPING, "generic has minimum role group");
 | |
|     info("Setting popover to null on generic");
 | |
|     // Setting popover to null causes the Accessible to be recreated.
 | |
|     shown = waitForEvent(EVENT_SHOW, "generic");
 | |
|     await invokeContentTask(browser, [], () => {
 | |
|       content.document.getElementById("generic").popover = null;
 | |
|     });
 | |
|     generic = (await shown).accessible;
 | |
|     testRole(generic, ROLE_SECTION, "generic has generic role");
 | |
| 
 | |
|     let alert = findAccessibleChildByID(docAcc, "alert");
 | |
|     ok(!alert, "alert doesn't have an Accessible");
 | |
|     info("Showing alert");
 | |
|     shown = waitForEvent(EVENT_SHOW, "alert");
 | |
|     await invokeContentTask(browser, [], () => {
 | |
|       content.document.getElementById("alert").showPopover();
 | |
|     });
 | |
|     alert = (await shown).accessible;
 | |
|     testRole(alert, ROLE_ALERT, "alert has role alert");
 | |
| 
 | |
|     let blockquote = findAccessibleChildByID(docAcc, "blockquote");
 | |
|     ok(!blockquote, "blockquote doesn't have an Accessible");
 | |
|     info("Showing blockquote");
 | |
|     shown = waitForEvent(EVENT_SHOW, "blockquote");
 | |
|     await invokeContentTask(browser, [], () => {
 | |
|       content.document.getElementById("blockquote").showPopover();
 | |
|     });
 | |
|     blockquote = (await shown).accessible;
 | |
|     testRole(blockquote, ROLE_BLOCKQUOTE, "blockquote has role blockquote");
 | |
|   },
 | |
|   { chrome: true, topLevel: true }
 | |
| );
 | 
