Index: chrome/test/data/extensions/api_test/media_galleries/scan/test.js |
diff --git a/chrome/test/data/extensions/api_test/media_galleries/scan/test.js b/chrome/test/data/extensions/api_test/media_galleries/scan/test.js |
index aae404fb71e405bf848dd5b3631ffb93192ce108..21c061eca4ba95163d1bb0ee4fad1df3d72d17b1 100644 |
--- a/chrome/test/data/extensions/api_test/media_galleries/scan/test.js |
+++ b/chrome/test/data/extensions/api_test/media_galleries/scan/test.js |
@@ -4,34 +4,38 @@ |
var mediaGalleries = chrome.mediaGalleries; |
-function StartAndCancelMediaScanTest() { |
- function StartMediaScanTest() { |
- var startEventListener = function(details) { |
- chrome.test.assertEq('start', details.type); |
- mediaGalleries.onScanProgress.removeListener(startEventListener); |
- CancelMediaScanTest(); |
- } |
- mediaGalleries.onScanProgress.addListener(startEventListener); |
+function MediaScanTest() { |
+ var scanProgress = 'start'; |
+ var initialGalleryCount = 0; |
- mediaGalleries.startMediaScan(); |
+ function OnScanResultsAdded(galleries) { |
+ chrome.test.assertEq(initialGalleryCount + 1, galleries.length); |
+ chrome.test.succeed(); |
} |
- function CancelMediaScanTest() { |
- var cancelEventListener = function(details) { |
- chrome.test.assertEq('cancel', details.type); |
- mediaGalleries.onScanProgress.removeListener(cancelEventListener); |
- chrome.test.succeed(); |
- }; |
- mediaGalleries.onScanProgress.addListener(cancelEventListener); |
+ function OnScanProgress(details) { |
+ chrome.test.assertEq(scanProgress, details.type); |
+ if (scanProgress == 'start') { |
+ scanProgress = 'finish'; |
+ } else { |
+ scanProgress = 'done'; |
+ chrome.test.runWithUserGesture(function() { |
+ mediaGalleries.addScanResults(OnScanResultsAdded); |
+ }); |
+ } |
+ } |
- mediaGalleries.cancelMediaScan(); |
+ function OnInitialMediaGalleries(galleries) { |
+ initialGalleryCount = galleries.length; |
+ mediaGalleries.onScanProgress.addListener(OnScanProgress); |
+ mediaGalleries.startMediaScan(); |
} |
- StartMediaScanTest(); |
+ mediaGalleries.getMediaFileSystems(OnInitialMediaGalleries); |
} |
CreateDummyWindowToPreventSleep(); |
chrome.test.runTests([ |
- StartAndCancelMediaScanTest, |
+ MediaScanTest, |
]); |