Index: chrome/test/data/extensions/api_test/content_scripts/extension_iframe/iframe.js |
diff --git a/chrome/test/data/extensions/api_test/content_scripts/extension_iframe/iframe.js b/chrome/test/data/extensions/api_test/content_scripts/extension_iframe/iframe.js |
index 572f28047d6e70af9e6b7d1067db10fe3743bd9d..0858517a9c7fd39dcbf6b0b038ededab2f0a3d31 100644 |
--- a/chrome/test/data/extensions/api_test/content_scripts/extension_iframe/iframe.js |
+++ b/chrome/test/data/extensions/api_test/content_scripts/extension_iframe/iframe.js |
@@ -11,7 +11,7 @@ function runsWithException(f) { |
console.log('Error: ' + f + '" doesn\'t throw exception.'); |
return false; |
} catch (e) { |
- if (e.message.indexOf(' can only be used in extension processes.') > -1) { |
+ if (e.message.indexOf(' cannot be used in this context.') > -1) { |
return true; |
} else { |
console.log('Error: incorrect exception message: ' + e.message); |
@@ -28,11 +28,18 @@ if (chrome.storage) { |
success = false; |
} |
-// Ditto chrome.tabs, though it's special because it's a dependency of the |
-// partially unprivileged chrome.extension. |
-if (chrome.tabs) { |
- console.log('Error: chrome.tabs exists, it shouldn\'t.'); |
- success = false; |
+// Ditto all children of chrome.tabs. |
+for (p in chrome.tabs) { |
+ if (chrome.tabs.hasOwnProperty(p)) { |
+ if (["remove", "create", "update"].indexOf(p) == -1) { |
+ if (!runsWithException( |
+ function(p) { return chrome.tabs[p]; }.bind(null, p))) { |
+ console.log(p); |
+ success = false; |
+ break; |
+ } |
+ } |
+ } |
} |
// Parts of chrome.extension are unavailable. |