diff -r 000000000000 -r 6474c204b198 browser/devtools/netmonitor/test/browser_net_icon-preview.js --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/browser/devtools/netmonitor/test/browser_net_icon-preview.js Wed Dec 31 06:09:35 2014 +0100 @@ -0,0 +1,61 @@ +/* Any copyright is dedicated to the Public Domain. + http://creativecommons.org/publicdomain/zero/1.0/ */ + +/** + * Tests if image responses show a thumbnail in the requests menu. + */ + +function test() { + initNetMonitor(CONTENT_TYPE_WITHOUT_CACHE_URL).then(([aTab, aDebuggee, aMonitor]) => { + info("Starting test... "); + + let { $, $all, EVENTS, ACTIVITY_TYPE, NetMonitorView, NetMonitorController } = aMonitor.panelWin; + let { RequestsMenu } = NetMonitorView; + + promise.all([ + waitForNetworkEvents(aMonitor, 6), + waitFor(aMonitor.panelWin, EVENTS.RESPONSE_IMAGE_THUMBNAIL_DISPLAYED) + ]).then(() => { + info("Checking the image thumbnail when all items are shown."); + checkImageThumbnail(); + + RequestsMenu.sortBy("size"); + info("Checking the image thumbnail when all items are sorted."); + checkImageThumbnail(); + + RequestsMenu.filterOn("images"); + info("Checking the image thumbnail when only images are shown."); + checkImageThumbnail(); + + info("Reloading the debuggee and performing all requests again..."); + reloadAndPerformRequests(); + + return promise.all([ + waitForNetworkEvents(aMonitor, 7), // 6 + 1 + waitFor(aMonitor.panelWin, EVENTS.RESPONSE_IMAGE_THUMBNAIL_DISPLAYED) + ]); + }).then(() => { + info("Checking the image thumbnail after a reload."); + checkImageThumbnail(); + + teardown(aMonitor).then(finish); + }); + + function reloadAndPerformRequests() { + NetMonitorController.triggerActivity(ACTIVITY_TYPE.RELOAD.WITH_CACHE_ENABLED).then(() => { + aDebuggee.performRequests(); + }); + } + + function checkImageThumbnail() { + is($all(".requests-menu-icon[type=thumbnail]").length, 1, + "There should be only one image request with a thumbnail displayed."); + is($(".requests-menu-icon[type=thumbnail]").src, TEST_IMAGE_DATA_URI, + "The image requests-menu-icon thumbnail is displayed correctly."); + is($(".requests-menu-icon[type=thumbnail]").hidden, false, + "The image requests-menu-icon thumbnail should not be hidden."); + } + + aDebuggee.performRequests(); + }); +}