Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 galleries; | 5 var galleries; |
| 6 var invalidGalleryId = '11000'; | 6 var invalidGalleryId = '11000'; |
| 7 | 7 |
| 8 // chrome.mediaGalleries.getMediaFileSystems callback. | 8 // chrome.mediaGalleries.getMediaFileSystems callback. |
| 9 var mediaFileSystemsListCallback = function (results) { | 9 var mediaFileSystemsListCallback = function (results) { |
| 10 galleries = results; | 10 galleries = results; |
| 11 chrome.test.sendMessage('get_media_file_systems_callback_ok'); | 11 chrome.test.sendMessage('get_media_file_systems_callback_ok'); |
| 12 }; | 12 }; |
| 13 | 13 |
| 14 // Gallery changed event handler. | 14 // Gallery changed event handler. |
| 15 var onGalleryChangedCallback = function (details) { | 15 var onGalleryChangedCallback = function (details) { |
| 16 chrome.test.sendMessage('gallery_changed_event_received'); | 16 chrome.test.sendMessage('gallery_changed_event_received'); |
| 17 }; | 17 }; |
| 18 | 18 |
| 19 // Add watch request callback. | 19 // Add watch request callback. |
| 20 var onAddWatchRequestCallback = function (details) { | 20 var onAddWatchRequestCallback = function (details) { |
| 21 if (!details || !details.success) | 21 if (!details || !details.success) { |
| 22 chrome.test.sendMessage('add_watch_request_failed'); | 22 chrome.test.sendMessage('add_watch_request_failed'); |
| 23 else | 23 } else { |
| 24 chrome.test.sendMessage('add_watch_request_succeeded'); | 24 chrome.test.sendMessage('add_watch_request_succeeded'); |
| 25 } | |
| 25 }; | 26 }; |
| 26 | 27 |
| 27 // chrome.mediaGalleries.getAllGalleryWatch callback. | 28 // chrome.mediaGalleries.getAllGalleryWatch callback. |
| 28 var getAllGalleryWatchCallback = function (results) { | 29 var getAllGalleryWatchCallback = function (results) { |
| 29 if (!results) { | 30 if (!results) { |
| 30 chrome.test.sendMessage('get_all_gallery_watch_failed'); | 31 chrome.test.sendMessage('get_all_gallery_watch_failed'); |
| 31 return; | 32 return; |
| 32 } | 33 } |
| 33 if (results.length == 0) { | 34 if (results.length == 0) { |
| 34 chrome.test.sendMessage('gallery_watchers_does_not_exists'); | 35 chrome.test.sendMessage('gallery_watchers_does_not_exists'); |
| 35 } else { | 36 } else { |
| 36 for (var i = 0; i < results.lendth; ++i) { | 37 for (var i = 0; i < results.length; ++i) { |
| 37 var info = chrome.mediaGalleries.getMediaFileSystemMetadata(galleries[i]); | 38 var info = chrome.mediaGalleries.getMediaFileSystemMetadata(galleries[i]); |
| 38 if (results[i] !== info.galleryId) { | 39 if (results[i] !== info.galleryId) { |
| 39 chrome.test.sendMessage('gallery_watcher_mismatch'); | 40 chrome.test.sendMessage('gallery_watcher_mismatch'); |
| 40 return; | 41 return; |
| 41 } | 42 } |
| 42 } | 43 } |
| 43 chrome.test.sendMessage('gallery_watcher_checks'); | 44 chrome.test.sendMessage('gallery_watcher_checks'); |
| 44 } | 45 } |
| 45 }; | 46 }; |
| 46 | 47 |
| 47 // Helpers to add and remove event listeners. | 48 // Helpers to add and remove event listeners. |
| 48 function addGalleryChangedListener() { | 49 function addGalleryChangedListener() { |
| 49 chrome.mediaGalleriesPrivate.onGalleryChanged.addListener( | 50 chrome.mediaGalleries.onGalleryChanged.addListener( |
| 50 onGalleryChangedCallback); | 51 onGalleryChangedCallback); |
| 51 chrome.test.sendMessage('add_gallery_changed_listener_ok'); | 52 chrome.test.sendMessage('add_gallery_changed_listener_ok'); |
| 52 }; | 53 }; |
| 53 | 54 |
| 54 function setupWatchOnValidGalleries() { | 55 function setupWatchOnValidGalleries() { |
| 55 for (var i = 0; i < galleries.length; ++i) { | 56 for (var i = 0; i < galleries.length; ++i) { |
| 56 var info = chrome.mediaGalleries.getMediaFileSystemMetadata(galleries[i]); | 57 var info = chrome.mediaGalleries.getMediaFileSystemMetadata(galleries[i]); |
| 57 chrome.mediaGalleriesPrivate.addGalleryWatch(info.galleryId, | 58 chrome.mediaGalleries.addGalleryWatch(info.galleryId, |
| 58 onAddWatchRequestCallback); | 59 onAddWatchRequestCallback); |
| 59 } | 60 } |
| 60 chrome.test.sendMessage('add_gallery_watch_ok'); | 61 chrome.test.sendMessage('add_gallery_watch_ok'); |
| 61 }; | 62 }; |
| 62 | 63 |
| 64 function getUnlistenedAddWatchCallback(expectedNumCalls) { | |
|
tommycli
2014/08/20 23:21:13
Since this is a bit non-obvious, maybe add some do
Oren Blasberg
2014/08/21 02:45:21
Done.
| |
| 65 var numCalls = 0; | |
| 66 var numErrors = 0; | |
| 67 return function() { | |
| 68 numCalls++; | |
| 69 if (chrome.runtime.lastError) { | |
| 70 numErrors++; | |
| 71 } | |
| 72 | |
| 73 if (numCalls == expectedNumCalls && numErrors == expectedNumCalls) { | |
| 74 chrome.test.sendMessage('add_watch_request_runtime_error'); | |
| 75 } | |
| 76 }; | |
| 77 } | |
| 78 | |
| 79 function setupWatchOnUnlistenedValidGalleries() { | |
| 80 var callback = getUnlistenedAddWatchCallback(galleries.length); | |
| 81 for (var i = 0; i < galleries.length; ++i) { | |
| 82 var info = chrome.mediaGalleries.getMediaFileSystemMetadata(galleries[i]); | |
| 83 chrome.mediaGalleries.addGalleryWatch(info.galleryId, callback); | |
| 84 } | |
| 85 | |
| 86 chrome.test.sendMessage('add_gallery_watch_ok'); | |
| 87 }; | |
| 88 | |
| 63 function setupWatchOnInvalidGallery() { | 89 function setupWatchOnInvalidGallery() { |
| 64 chrome.mediaGalleriesPrivate.addGalleryWatch(invalidGalleryId, | 90 chrome.mediaGalleries.addGalleryWatch(invalidGalleryId, |
| 65 onAddWatchRequestCallback); | 91 onAddWatchRequestCallback); |
| 66 chrome.test.sendMessage('add_gallery_watch_ok'); | 92 chrome.test.sendMessage('add_gallery_watch_ok'); |
| 67 } | 93 } |
| 68 | 94 |
| 69 function getMediaFileSystems() { | 95 function getMediaFileSystems() { |
| 70 chrome.mediaGalleries.getMediaFileSystems(mediaFileSystemsListCallback); | 96 chrome.mediaGalleries.getMediaFileSystems(mediaFileSystemsListCallback); |
| 71 chrome.test.sendMessage('get_media_file_systems_ok'); | 97 chrome.test.sendMessage('get_media_file_systems_ok'); |
| 72 }; | 98 }; |
| 73 | 99 |
| 74 function removeGalleryWatch() { | 100 function removeGalleryWatch() { |
| 75 for (var i = 0; i < galleries.length; ++i) { | 101 for (var i = 0; i < galleries.length; ++i) { |
| 76 var info = chrome.mediaGalleries.getMediaFileSystemMetadata(galleries[i]); | 102 var info = chrome.mediaGalleries.getMediaFileSystemMetadata(galleries[i]); |
| 77 chrome.mediaGalleriesPrivate.removeGalleryWatch(info.galleryId); | 103 chrome.mediaGalleries.removeGalleryWatch(info.galleryId); |
| 78 } | 104 } |
| 79 chrome.test.sendMessage('remove_gallery_watch_ok'); | 105 chrome.test.sendMessage('remove_gallery_watch_ok'); |
| 80 }; | 106 }; |
| 81 | 107 |
| 82 function removeGalleryChangedListener() { | 108 function removeGalleryChangedListener() { |
| 83 chrome.mediaGalleriesPrivate.onGalleryChanged.removeListener( | 109 chrome.mediaGalleries.onGalleryChanged.removeListener( |
| 84 onGalleryChangedCallback); | 110 onGalleryChangedCallback); |
| 85 chrome.test.sendMessage('remove_gallery_changed_listener_ok'); | 111 chrome.test.sendMessage('remove_gallery_changed_listener_ok'); |
| 86 }; | 112 }; |
| 87 | 113 |
| 88 function getAllWatchedGalleryIds() { | 114 function getAllWatchedGalleryIds() { |
| 89 chrome.mediaGalleriesPrivate.getAllGalleryWatch(getAllGalleryWatchCallback); | 115 chrome.mediaGalleries.getAllGalleryWatch(getAllGalleryWatchCallback); |
| 90 chrome.test.sendMessage('get_all_gallery_watch_ok'); | 116 chrome.test.sendMessage('get_all_gallery_watch_ok'); |
| 91 }; | 117 }; |
| 92 | 118 |
| 93 function removeAllGalleryWatch() { | 119 function removeAllGalleryWatch() { |
| 94 chrome.mediaGalleriesPrivate.removeAllGalleryWatch(); | 120 chrome.mediaGalleries.removeAllGalleryWatch(); |
| 95 chrome.test.sendMessage('remove_all_gallery_watch_ok'); | 121 chrome.test.sendMessage('remove_all_gallery_watch_ok'); |
| 96 }; | 122 }; |
| OLD | NEW |