Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(90)

Side by Side Diff: chrome/test/data/extensions/api_test/automation/tests/tabs/queryselector.js

Issue 2439203003: Reland of Accessibility: Ignore all anonymous blocks (Closed)
Patch Set: Rebased. Created 4 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 var allTests = [ 5 var allTests = [
6 // Basic query from root node. 6 // Basic query from root node.
7 function testQuerySelector() { 7 function testQuerySelector() {
8 var cancelButton = rootNode.lastChild.lastChild; 8 var cancelButton = rootNode.children[3];
9 function assertCorrectResult(queryResult) { 9 function assertCorrectResult(queryResult) {
10 assertEq(queryResult, cancelButton); 10 assertEq(queryResult, cancelButton);
11 chrome.test.succeed(); 11 chrome.test.succeed();
12 } 12 }
13 rootNode.domQuerySelector('body > button:nth-of-type(2)', 13 rootNode.domQuerySelector('body > button:nth-of-type(2)',
14 assertCorrectResult); 14 assertCorrectResult);
15 }, 15 },
16 16
17 function testQuerySelectorNoMatch() { 17 function testQuerySelectorNoMatch() {
18 function assertCorrectResult(queryResult) { 18 function assertCorrectResult(queryResult) {
(...skipping 13 matching lines...) Expand all
32 function assertCorrectResult(queryResult) { 32 function assertCorrectResult(queryResult) {
33 assertEq(queryResult, p); 33 assertEq(queryResult, p);
34 chrome.test.succeed(); 34 chrome.test.succeed();
35 } 35 }
36 main.domQuerySelector('p', assertCorrectResult); 36 main.domQuerySelector('p', assertCorrectResult);
37 }, 37 },
38 38
39 // Demonstrates that a query for an element which is ignored for accessibility 39 // Demonstrates that a query for an element which is ignored for accessibility
40 // returns its nearest ancestor. 40 // returns its nearest ancestor.
41 function testQuerySelectorForSpanInsideButtonReturnsButton() { 41 function testQuerySelectorForSpanInsideButtonReturnsButton() {
42 var okButton = rootNode.lastChild.firstChild; 42 var okButton = rootNode.children[2];
43 function assertCorrectResult(queryResult) { 43 function assertCorrectResult(queryResult) {
44 assertEq(queryResult, okButton); 44 assertEq(queryResult, okButton);
45 chrome.test.succeed(); 45 chrome.test.succeed();
46 } 46 }
47 rootNode.domQuerySelector('#span-in-button', assertCorrectResult); 47 rootNode.domQuerySelector('#span-in-button', assertCorrectResult);
48 }, 48 },
49 49
50 // Demonstrates that querying from an anonymous node may have unexpected
51 // results.
52 function testQuerySelectorFromAnonymousGroup() {
53 var h1 = rootNode.firstChild.firstChild;
54 var group = rootNode.lastChild;
55 function assertCorrectResult(queryResult) {
56 assertEq(h1, queryResult);
57 chrome.test.succeed();
58 }
59 group.domQuerySelector('h1', assertCorrectResult);
60 },
61
62 function testQuerySelectorFromRemovedNode() { 50 function testQuerySelectorFromRemovedNode() {
63 var group = rootNode.firstChild; 51 var group = rootNode.firstChild;
64 function assertCorrectResult(queryResult) { 52 function assertCorrectResult(queryResult) {
65 assertEq(null, queryResult); 53 assertEq(null, queryResult);
66 var errorMsg = 54 var errorMsg =
67 'domQuerySelector sent on node which is no longer in the tree.'; 55 'domQuerySelector sent on node which is no longer in the tree.';
68 assertEq(errorMsg, chrome.extension.lastError.message); 56 assertEq(errorMsg, chrome.extension.lastError.message);
69 assertEq(errorMsg, chrome.runtime.lastError.message); 57 assertEq(errorMsg, chrome.runtime.lastError.message);
70 58
71 chrome.test.succeed(); 59 chrome.test.succeed();
72 } 60 }
73 function afterRemoveChild() { 61 function afterRemoveChild() {
74 group.domQuerySelector('h1', assertCorrectResult); 62 group.domQuerySelector('h1', assertCorrectResult);
75 } 63 }
76 chrome.tabs.executeScript( 64 chrome.tabs.executeScript(
77 { code: 'document.body.removeChild(document.body.firstElementChild)' }, 65 { code: 'document.body.removeChild(document.body.firstElementChild)' },
78 afterRemoveChild); 66 afterRemoveChild);
79 } 67 }
80 ]; 68 ];
81 69
82 setUpAndRunTests(allTests, 'complex.html'); 70 setUpAndRunTests(allTests, 'complex.html');
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698