diff options
Diffstat (limited to 'toolkit/components/thumbnails/test/browser_thumbnails_bug818225.js')
-rw-r--r-- | toolkit/components/thumbnails/test/browser_thumbnails_bug818225.js | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/toolkit/components/thumbnails/test/browser_thumbnails_bug818225.js b/toolkit/components/thumbnails/test/browser_thumbnails_bug818225.js new file mode 100644 index 000000000..a7e1caa04 --- /dev/null +++ b/toolkit/components/thumbnails/test/browser_thumbnails_bug818225.js @@ -0,0 +1,42 @@ +/* Any copyright is dedicated to the Public Domain. + http://creativecommons.org/publicdomain/zero/1.0/ */ + +const URL = "http://mochi.test:8888/browser/toolkit/components/thumbnails/" + + "test/background_red.html?" + Date.now(); + +// Test PageThumbs API function getThumbnailPath +function* runTests() { + + let path = PageThumbs.getThumbnailPath(URL); + yield testIfExists(path, false, "Thumbnail file does not exist"); + + yield addVisitsAndRepopulateNewTabLinks(URL, next); + yield createThumbnail(URL); + + path = PageThumbs.getThumbnailPath(URL); + let expectedPath = PageThumbsStorage.getFilePathForURL(URL); + is(path, expectedPath, "Thumbnail file has correct path"); + + yield testIfExists(path, true, "Thumbnail file exists"); + +} + +function createThumbnail(aURL) { + addTab(aURL, function () { + whenFileExists(aURL, function () { + gBrowser.removeTab(gBrowser.selectedTab); + next(); + }); + }); +} + +function testIfExists(aPath, aExpected, aMessage) { + return OS.File.exists(aPath).then( + function onSuccess(exists) { + is(exists, aExpected, aMessage); + }, + function onFailure(error) { + ok(false, "OS.File.exists() failed " + error); + } + ); +} |