OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 function testTreeChangedObserverForCreatingNode() { | 6 function testTreeChangedObserverForCreatingNode() { |
| 7 chrome.automation.setTreeChangeObserverMask("allTreeChanges"); |
7 chrome.automation.addTreeChangeObserver(function(change) { | 8 chrome.automation.addTreeChangeObserver(function(change) { |
8 if (change.type == "subtreeCreated" && change.target.name == "New") { | 9 if (change.type == "subtreeCreated" && change.target.name == "New") { |
9 chrome.test.succeed(); | 10 chrome.test.succeed(); |
10 } | 11 } |
11 }); | 12 }); |
12 | 13 |
13 var addButton = rootNode.find({ attributes: { name: 'Add' }}); | 14 var addButton = rootNode.find({ attributes: { name: 'Add' }}); |
14 addButton.doDefault(); | 15 addButton.doDefault(); |
15 }, | 16 }, |
16 | 17 |
17 function testTreeChangedObserverForRemovingNode() { | 18 function testTreeChangedObserverForRemovingNode() { |
| 19 chrome.automation.setTreeChangeObserverMask("allTreeChanges"); |
18 chrome.automation.addTreeChangeObserver(function(change) { | 20 chrome.automation.addTreeChangeObserver(function(change) { |
19 if (change.type == "nodeRemoved" && change.target.role == "listItem") { | 21 if (change.type == "nodeRemoved" && change.target.role == "listItem") { |
20 chrome.test.succeed(); | 22 chrome.test.succeed(); |
21 } | 23 } |
22 }); | 24 }); |
23 | 25 |
24 var removeButton = rootNode.find({ attributes: { name: 'Remove' }}); | 26 var removeButton = rootNode.find({ attributes: { name: 'Remove' }}); |
25 removeButton.doDefault(); | 27 removeButton.doDefault(); |
| 28 }, |
| 29 |
| 30 function testTreeChangedObserverForLiveRegionsOnly() { |
| 31 // This test would fail if we set the mask to allTreeChanges. |
| 32 chrome.automation.setTreeChangeObserverMask('liveRegionTreeChanges'); |
| 33 chrome.automation.addTreeChangeObserver(function(change) { |
| 34 if (change.target.name == 'Dead') { |
| 35 chrome.test.fail(); |
| 36 } |
| 37 if (change.target.name == 'Live') { |
| 38 chrome.test.succeed(); |
| 39 } |
| 40 }); |
| 41 |
| 42 var liveButton = rootNode.find({ attributes: { name: 'Live' }}); |
| 43 liveButton.doDefault(); |
26 } | 44 } |
| 45 |
27 ]; | 46 ]; |
28 | 47 |
29 setUpAndRunTests(allTests, 'tree_change.html'); | 48 setUpAndRunTests(allTests, 'tree_change.html'); |
OLD | NEW |