Chromium Code Reviews| Index: chrome/test/data/extensions/api_test/native_bindings/declarative_content/background.js |
| diff --git a/chrome/test/data/extensions/api_test/native_bindings/declarative_content/background.js b/chrome/test/data/extensions/api_test/native_bindings/declarative_content/background.js |
| index b2fa91496778abb74017ab066e839007cd6c9317..dead4fbcfb9665db0753bb4a5d70d3e37aaf636e 100644 |
| --- a/chrome/test/data/extensions/api_test/native_bindings/declarative_content/background.js |
| +++ b/chrome/test/data/extensions/api_test/native_bindings/declarative_content/background.js |
| @@ -8,16 +8,23 @@ |
| const kRuleId = 'rule1'; |
| +var canvas = document.createElement('canvas'); |
| +var ctx = canvas.getContext('2d'); |
| +var imageData = ctx.createImageData(19, 19); |
|
jbroman
2017/05/01 20:16:40
nit: Why not just "new ImageData(19, 19)"?
Devlin
2017/05/01 20:46:47
copy-paste code. Simplified.
|
| + |
| var rule = { |
| conditions: [ |
| new chrome.declarativeContent.PageStateMatcher( |
| {pageUrl: {hostPrefix: 'example'}}), |
| ], actions: [ |
| new chrome.declarativeContent.ShowPageAction(), |
| + new chrome.declarativeContent.SetIcon({imageData: imageData}), |
| ], |
| id: kRuleId, |
| }; |
| +console.warn(JSON.stringify(rule)); |
|
jbroman
2017/05/01 20:16:40
Was this left here from debugging?
Devlin
2017/05/01 20:46:47
Whoops, thought I caught them all. Removed.
|
| + |
| chrome.pageAction.onClicked.addListener(function() { |
| chrome.declarativeContent.onPageChanged.removeRules([kRuleId], function() { |
| chrome.declarativeContent.onPageChanged.getRules(function(rules) { |
| @@ -34,3 +41,24 @@ chrome.declarativeContent.onPageChanged.addRules([rule], function() { |
| chrome.test.sendMessage('ready'); |
| }); |
| }); |
| + |
| +function didThrow(func) { |
| + var caught = false; |
| + try { |
| + func(); |
| + } catch (e) { |
| + caught = true; |
| + } |
| + return caught; |
| +} |
| + |
| +chrome.test.runTests([ |
| + function validationCheck() { |
| + // Test that type constructions are properly validated. |
| + chrome.test.assertTrue(didThrow(function() { |
| + var matcher = new chrome.declarativeContent.PageStateMatcher( |
| + {pageUrl: {fake: 'bogus'}}); |
| + })); |
| + chrome.test.succeed(); |
| + }, |
| +]); |