Index: chrome/browser/chromeos/login/wallpaper_manager_browsertest.cc |
diff --git a/chrome/browser/chromeos/login/wallpaper_manager_browsertest.cc b/chrome/browser/chromeos/login/wallpaper_manager_browsertest.cc |
index e0af3e12288b966c54160c030ca9ed0404455236..d96f81472431369770f8ba2ac5c264dd773dcbd0 100644 |
--- a/chrome/browser/chromeos/login/wallpaper_manager_browsertest.cc |
+++ b/chrome/browser/chromeos/login/wallpaper_manager_browsertest.cc |
@@ -5,7 +5,6 @@ |
#include "chrome/browser/chromeos/login/wallpaper_manager.h" |
#include "ash/ash_resources/grit/ash_resources.h" |
-#include "ash/ash_switches.h" |
#include "ash/desktop_background/desktop_background_controller.h" |
#include "ash/desktop_background/desktop_background_controller_observer.h" |
#include "ash/desktop_background/desktop_background_controller_test_api.h" |
@@ -28,6 +27,7 @@ |
#include "base/values.h" |
#include "chrome/browser/chromeos/login/user.h" |
#include "chrome/browser/chromeos/login/user_manager.h" |
+#include "chrome/browser/chromeos/login/wallpaper_manager_test_utils.h" |
#include "chrome/common/chrome_paths.h" |
#include "chrome/common/chrome_switches.h" |
#include "chrome/test/base/in_process_browser_test.h" |
@@ -36,7 +36,7 @@ |
#include "content/public/test/test_utils.h" |
#include "ui/aura/env.h" |
#include "ui/base/resource/resource_bundle.h" |
-#include "ui/gfx/codec/jpeg_codec.h" |
+#include "ui/gfx/image/image_skia.h" |
#include "ui/gfx/point.h" |
#include "ui/gfx/rect.h" |
@@ -101,30 +101,7 @@ class WallpaperManagerBrowserTest : public InProcessBrowserTest, |
base::RunLoop().RunUntilIdle(); |
} |
- void WaitAsyncWallpaperLoadFinished() { |
- base::RunLoop().RunUntilIdle(); |
- while (WallpaperManager::Get()->loading_.size()) { |
- base::PlatformThread::Sleep(base::TimeDelta::FromMilliseconds(100)); |
- base::RunLoop().RunUntilIdle(); |
- } |
- } |
- |
protected: |
- // Colors used for different default wallpapers by |
- // WriteWallpapers(). |
- static const SkColor kLargeWallpaperColor = SK_ColorRED; |
- static const SkColor kSmallWallpaperColor = SK_ColorGREEN; |
- static const SkColor kLargeGuestWallpaperColor = SK_ColorBLUE; |
- static const SkColor kSmallGuestWallpaperColor = SK_ColorYELLOW; |
- |
- // A color that can be passed to CreateImage(). Specifically chosen to not |
- // conflict with any of the default wallpaper colors. |
- static const SkColor kCustomWallpaperColor = SK_ColorMAGENTA; |
- |
- // Dimension used for width and height of default wallpaper images. A |
- // small value is used to minimize the amount of time spent compressing |
- // and writing images. |
- static const int kWallpaperSize = 2; |
// Return custom wallpaper path. Create directory if not exist. |
base::FilePath GetCustomWallpaperPath(const char* sub_dir, |
@@ -167,146 +144,22 @@ class WallpaperManagerBrowserTest : public InProcessBrowserTest, |
WallpaperManager::Get()->ClearDisposableWallpaperCache(); |
} |
- // Creates a test image of size 1x1. |
- gfx::ImageSkia CreateTestImage(int width, int height, SkColor color) { |
- SkBitmap bitmap; |
- bitmap.setConfig(SkBitmap::kARGB_8888_Config, width, height); |
- bitmap.allocPixels(); |
- bitmap.eraseColor(color); |
- return gfx::ImageSkia::CreateFrom1xBitmap(bitmap); |
- } |
- |
- // Writes a JPEG image of the specified size and color to |path|. Returns |
- // true on success. |
- bool WriteJPEGFile(const base::FilePath& path, |
- int width, |
- int height, |
- SkColor color) { |
- SkBitmap bitmap; |
- bitmap.setConfig(SkBitmap::kARGB_8888_Config, width, height, 0); |
- bitmap.allocPixels(); |
- bitmap.eraseColor(color); |
- |
- const int kQuality = 80; |
- std::vector<unsigned char> output; |
- if (!gfx::JPEGCodec::Encode( |
- static_cast<const unsigned char*>(bitmap.getPixels()), |
- gfx::JPEGCodec::FORMAT_SkBitmap, |
- width, |
- height, |
- bitmap.rowBytes(), |
- kQuality, |
- &output)) { |
- LOG(ERROR) << "Unable to encode " << width << "x" << height << " bitmap"; |
- return false; |
- } |
- |
- size_t bytes_written = base::WriteFile( |
- path, reinterpret_cast<const char*>(&output[0]), output.size()); |
- if (bytes_written != output.size()) { |
- LOG(ERROR) << "Wrote " << bytes_written << " byte(s) instead of " |
- << output.size() << " to " << path.value(); |
- return false; |
- } |
- |
- return true; |
- } |
- |
// Initializes default wallpaper paths "*default_*file" and writes JPEG |
// wallpaper images to them. |
// Only needs to be called (once) by tests that want to test loading of |
// default wallpapers. |
- void WriteWallpapers() { |
+ void CreateCmdlineWallpapers() { |
wallpaper_dir_.reset(new base::ScopedTempDir); |
ASSERT_TRUE(wallpaper_dir_->CreateUniqueTempDir()); |
- |
- std::vector<std::string> options; |
- options.push_back(std::string("WM_Test_cmdline")); |
- const base::FilePath small_file = |
- wallpaper_dir_->path().Append(FILE_PATH_LITERAL("small.jpg")); |
- options.push_back(std::string("--") + |
- ash::switches::kAshDefaultWallpaperSmall + "=" + |
- small_file.value()); |
- const base::FilePath large_file = |
- wallpaper_dir_->path().Append(FILE_PATH_LITERAL("large.jpg")); |
- options.push_back(std::string("--") + |
- ash::switches::kAshDefaultWallpaperLarge + "=" + |
- large_file.value()); |
- const base::FilePath guest_small_file = |
- wallpaper_dir_->path().Append(FILE_PATH_LITERAL("guest_small.jpg")); |
- options.push_back(std::string("--") + |
- ash::switches::kAshGuestWallpaperSmall + "=" + |
- guest_small_file.value()); |
- const base::FilePath guest_large_file = |
- wallpaper_dir_->path().Append(FILE_PATH_LITERAL("guest_large.jpg")); |
- options.push_back(std::string("--") + |
- ash::switches::kAshGuestWallpaperLarge + "=" + |
- guest_large_file.value()); |
- |
- ASSERT_TRUE(WriteJPEGFile(small_file, |
- kWallpaperSize, |
- kWallpaperSize, |
- kSmallWallpaperColor)); |
- ASSERT_TRUE(WriteJPEGFile(large_file, |
- kWallpaperSize, |
- kWallpaperSize, |
- kLargeWallpaperColor)); |
- ASSERT_TRUE(WriteJPEGFile(guest_small_file, |
- kWallpaperSize, |
- kWallpaperSize, |
- kSmallGuestWallpaperColor)); |
- ASSERT_TRUE(WriteJPEGFile(guest_large_file, |
- kWallpaperSize, |
- kWallpaperSize, |
- kLargeGuestWallpaperColor)); |
- |
- wallpaper_manager_command_line_.reset(new base::CommandLine(options)); |
- WallpaperManager::Get()->SetCommandLineForTesting( |
- wallpaper_manager_command_line_.get()); |
- } |
- |
- // Returns true if the color at the center of |image| is close to |
- // |expected_color|. (The center is used so small wallpaper images can be |
- // used.) |
- bool ImageIsNearColor(gfx::ImageSkia image, SkColor expected_color) { |
- if (image.size().IsEmpty()) { |
- LOG(ERROR) << "Image is empty"; |
- return false; |
- } |
- |
- const SkBitmap* bitmap = image.bitmap(); |
- if (!bitmap) { |
- LOG(ERROR) << "Unable to get bitmap from image"; |
- return false; |
- } |
- |
- bitmap->lockPixels(); |
- gfx::Point center = gfx::Rect(image.size()).CenterPoint(); |
- SkColor image_color = bitmap->getColor(center.x(), center.y()); |
- bitmap->unlockPixels(); |
- |
- const int kDiff = 3; |
- if (std::abs(static_cast<int>(SkColorGetA(image_color)) - |
- static_cast<int>(SkColorGetA(expected_color))) > kDiff || |
- std::abs(static_cast<int>(SkColorGetR(image_color)) - |
- static_cast<int>(SkColorGetR(expected_color))) > kDiff || |
- std::abs(static_cast<int>(SkColorGetG(image_color)) - |
- static_cast<int>(SkColorGetG(expected_color))) > kDiff || |
- std::abs(static_cast<int>(SkColorGetB(image_color)) - |
- static_cast<int>(SkColorGetB(expected_color))) > kDiff) { |
- LOG(ERROR) << "Expected color near 0x" << std::hex << expected_color |
- << " but got 0x" << image_color; |
- return false; |
- } |
- |
- return true; |
+ wallpaper_manager_test_utils::CreateCmdlineWallpapers( |
+ *wallpaper_dir_, &wallpaper_manager_command_line_); |
} |
DesktopBackgroundController* controller_; |
PrefService* local_state_; |
scoped_ptr<base::CommandLine> wallpaper_manager_command_line_; |
- // Directory created by WriteWallpapersAndSetFlags() to store default |
+ // Directory created by CreateCmdlineWallpapersAndSetFlags() to store default |
bshe
2014/05/02 14:58:18
There is no function named CreateCmdlineWallpapers
Alexander Alekseev
2014/05/04 23:30:56
Done.
|
// wallpaper images. |
scoped_ptr<base::ScopedTempDir> wallpaper_dir_; |
@@ -349,7 +202,7 @@ IN_PROC_BROWSER_TEST_P(WallpaperManagerBrowserTest, |
// Set the wallpaper for |kTestUser1|. |
wallpaper_manager->SetUserWallpaperNow(kTestUser1); |
- WaitAsyncWallpaperLoadFinished(); |
+ wallpaper_manager_test_utils::WaitAsyncWallpaperLoadFinished(); |
gfx::ImageSkia wallpaper = controller_->GetWallpaper(); |
// Display is initialized to 800x600. The small resolution custom wallpaper is |
@@ -359,7 +212,7 @@ IN_PROC_BROWSER_TEST_P(WallpaperManagerBrowserTest, |
// Hook up another 800x600 display. This shouldn't trigger a reload. |
UpdateDisplay("800x600,800x600"); |
- WaitAsyncWallpaperLoadFinished(); |
+ wallpaper_manager_test_utils::WaitAsyncWallpaperLoadFinished(); |
// The small resolution custom wallpaper is expected. |
EXPECT_EQ(kSmallWallpaperWidth, wallpaper.width()); |
EXPECT_EQ(kSmallWallpaperHeight, wallpaper.height()); |
@@ -369,7 +222,7 @@ IN_PROC_BROWSER_TEST_P(WallpaperManagerBrowserTest, |
// Hook up a 2000x2000 display. The large resolution custom wallpaper should |
// be loaded. |
UpdateDisplay("800x600,2000x2000"); |
- WaitAsyncWallpaperLoadFinished(); |
+ wallpaper_manager_test_utils::WaitAsyncWallpaperLoadFinished(); |
wallpaper = controller_->GetWallpaper(); |
// The large resolution custom wallpaper is expected. |
@@ -381,7 +234,7 @@ IN_PROC_BROWSER_TEST_P(WallpaperManagerBrowserTest, |
// Hook up the 2000x2000 display again. The large resolution default wallpaper |
// should persist. Test for crbug/165788. |
UpdateDisplay("800x600,2000x2000"); |
- WaitAsyncWallpaperLoadFinished(); |
+ wallpaper_manager_test_utils::WaitAsyncWallpaperLoadFinished(); |
wallpaper = controller_->GetWallpaper(); |
// The large resolution custom wallpaper is expected. |
@@ -401,12 +254,12 @@ IN_PROC_BROWSER_TEST_P(WallpaperManagerBrowserTest, |
// Loads the same wallpaper before the initial one finished. It should be |
// prevented. |
wallpaper_manager->SetUserWallpaperNow(kTestUser1); |
- WaitAsyncWallpaperLoadFinished(); |
+ wallpaper_manager_test_utils::WaitAsyncWallpaperLoadFinished(); |
EXPECT_EQ(1, LoadedWallpapers()); |
// Loads the same wallpaper after the initial one finished. It should be |
// prevented. |
wallpaper_manager->SetUserWallpaperNow(kTestUser1); |
- WaitAsyncWallpaperLoadFinished(); |
+ wallpaper_manager_test_utils::WaitAsyncWallpaperLoadFinished(); |
EXPECT_EQ(1, LoadedWallpapers()); |
ClearDisposableWallpaperCache(); |
@@ -438,7 +291,7 @@ IN_PROC_BROWSER_TEST_P(WallpaperManagerBrowserTest, |
WaitAsyncWallpaperLoadStarted(); |
EXPECT_EQ(2, LoadedWallpapers()); |
wallpaper_manager->SetUserWallpaperNow(kTestUser1); |
- WaitAsyncWallpaperLoadFinished(); |
+ wallpaper_manager_test_utils::WaitAsyncWallpaperLoadFinished(); |
EXPECT_EQ(2, LoadedWallpapers()); |
} |
@@ -469,7 +322,7 @@ IN_PROC_BROWSER_TEST_P(WallpaperManagerBrowserTest, |
IN_PROC_BROWSER_TEST_P(WallpaperManagerBrowserTest, |
UseMigratedWallpaperInfo) { |
LogIn(kTestUser1, kTestUser1Hash); |
- WaitAsyncWallpaperLoadFinished(); |
+ wallpaper_manager_test_utils::WaitAsyncWallpaperLoadFinished(); |
// This test should finish normally. If timeout, it is probably because |
// migrated wallpaper is somehow not loaded. Bad things can happen if |
// wallpaper is not loaded at login screen. One example is: crosbug.com/38429. |
@@ -490,7 +343,7 @@ IN_PROC_BROWSER_TEST_P(WallpaperManagerBrowserTest, |
IN_PROC_BROWSER_TEST_P(WallpaperManagerBrowserTest, |
UsePreMigrationWallpaperInfo) { |
LogIn(kTestUser1, kTestUser1Hash); |
- WaitAsyncWallpaperLoadFinished(); |
+ wallpaper_manager_test_utils::WaitAsyncWallpaperLoadFinished(); |
// This test should finish normally. If timeout, it is probably because chrome |
// can not handle pre migrated user profile (M21 profile or older). |
} |
@@ -502,12 +355,12 @@ IN_PROC_BROWSER_TEST_P(WallpaperManagerBrowserTest, |
UpdateDisplay("800x600"); |
// Set initial wallpaper to the default wallpaper. |
WallpaperManager::Get()->SetDefaultWallpaperNow(UserManager::kStubUser); |
- WaitAsyncWallpaperLoadFinished(); |
+ wallpaper_manager_test_utils::WaitAsyncWallpaperLoadFinished(); |
// Hook up a 2000x2000 display. The large resolution custom wallpaper should |
// be loaded. |
UpdateDisplay("800x600,2000x2000"); |
- WaitAsyncWallpaperLoadFinished(); |
+ wallpaper_manager_test_utils::WaitAsyncWallpaperLoadFinished(); |
} |
class WallpaperManagerBrowserTestNoAnimation |
@@ -546,7 +399,7 @@ IN_PROC_BROWSER_TEST_P(WallpaperManagerBrowserTestNoAnimation, |
IN_PROC_BROWSER_TEST_P(WallpaperManagerBrowserTestNoAnimation, |
UseMigratedWallpaperInfo) { |
LogIn(kTestUser1, kTestUser1Hash); |
- WaitAsyncWallpaperLoadFinished(); |
+ wallpaper_manager_test_utils::WaitAsyncWallpaperLoadFinished(); |
// This test should finish normally. If timeout, it is probably because |
// migrated wallpaper is somehow not loaded. Bad things can happen if |
// wallpaper is not loaded at login screen. One example is: crosbug.com/38429. |
@@ -558,7 +411,7 @@ IN_PROC_BROWSER_TEST_P(WallpaperManagerBrowserTestNoAnimation, |
PRE_UsePreMigrationWallpaperInfo) { |
// New user log in, a default wallpaper is loaded. |
LogIn(kTestUser1, kTestUser1Hash); |
- WaitAsyncWallpaperLoadFinished(); |
+ wallpaper_manager_test_utils::WaitAsyncWallpaperLoadFinished(); |
// Old wallpaper migration code doesn't exist in codebase anymore. So if |
// user's profile is not migrated, it is the same as no wallpaper info. To |
// simulate this, we remove user's wallpaper info here. |
@@ -568,7 +421,7 @@ IN_PROC_BROWSER_TEST_P(WallpaperManagerBrowserTestNoAnimation, |
IN_PROC_BROWSER_TEST_P(WallpaperManagerBrowserTestNoAnimation, |
UsePreMigrationWallpaperInfo) { |
LogIn(kTestUser1, kTestUser1Hash); |
- WaitAsyncWallpaperLoadFinished(); |
+ wallpaper_manager_test_utils::WaitAsyncWallpaperLoadFinished(); |
// This test should finish normally. If timeout, it is probably because chrome |
// can not handle pre migrated user profile (M21 profile or older). |
} |
@@ -588,7 +441,7 @@ class WallpaperManagerBrowserTestCrashRestore |
IN_PROC_BROWSER_TEST_P(WallpaperManagerBrowserTestCrashRestore, |
PRE_RestoreWallpaper) { |
LogIn(kTestUser1, kTestUser1Hash); |
- WaitAsyncWallpaperLoadFinished(); |
+ wallpaper_manager_test_utils::WaitAsyncWallpaperLoadFinished(); |
} |
// Test for crbug.com/270278. It simulates a browser crash and verifies if user |
@@ -609,11 +462,7 @@ class WallpaperManagerBrowserTestCacheUpdate |
protected: |
// Creates a test image of size 1x1. |
gfx::ImageSkia CreateTestImage(SkColor color) { |
- SkBitmap bitmap; |
- bitmap.setConfig(SkBitmap::kARGB_8888_Config, 1, 1); |
- bitmap.allocPixels(); |
- bitmap.eraseColor(color); |
- return gfx::ImageSkia::CreateFrom1xBitmap(bitmap); |
+ return wallpaper_manager_test_utils::CreateTestImage(1, 1, color); |
} |
}; |
@@ -651,7 +500,7 @@ IN_PROC_BROWSER_TEST_P(WallpaperManagerBrowserTestCacheUpdate, |
}; |
wallpaper_manager->SetUserWallpaperInfo(kTestUser1, info, true); |
wallpaper_manager->SetUserWallpaperNow(kTestUser1); |
- WaitAsyncWallpaperLoadFinished(); |
+ wallpaper_manager_test_utils::WaitAsyncWallpaperLoadFinished(); |
scoped_ptr<WallpaperManager::TestApi> test_api; |
test_api.reset(new WallpaperManager::TestApi(wallpaper_manager)); |
// Verify SetUserWallpaperNow updates wallpaper cache. |
@@ -670,7 +519,7 @@ IN_PROC_BROWSER_TEST_P(WallpaperManagerBrowserTestCacheUpdate, |
// wallpaper cache should not be deleted. |
IN_PROC_BROWSER_TEST_P(WallpaperManagerBrowserTestCacheUpdate, |
VerifyWallpaperCache) { |
- WaitAsyncWallpaperLoadFinished(); |
+ wallpaper_manager_test_utils::WaitAsyncWallpaperLoadFinished(); |
WallpaperManager* wallpaper_manager = WallpaperManager::Get(); |
scoped_ptr<WallpaperManager::TestApi> test_api; |
test_api.reset(new WallpaperManager::TestApi(wallpaper_manager)); |
@@ -679,7 +528,7 @@ IN_PROC_BROWSER_TEST_P(WallpaperManagerBrowserTestCacheUpdate, |
EXPECT_TRUE(test_api->GetWallpaperFromCache(kTestUser1, &cached_wallpaper)); |
LogIn(kTestUser2, kTestUser2Hash); |
- WaitAsyncWallpaperLoadFinished(); |
+ wallpaper_manager_test_utils::WaitAsyncWallpaperLoadFinished(); |
// Login another user should not delete logged in user's wallpaper cache. |
// Note active user is still kTestUser1. |
EXPECT_TRUE(test_api->GetWallpaperFromCache(kTestUser1, &cached_wallpaper)); |
@@ -689,7 +538,7 @@ IN_PROC_BROWSER_TEST_P(WallpaperManagerBrowserTestCacheUpdate, |
red_wallpaper, |
WALLPAPER_LAYOUT_CENTER, |
true); |
- WaitAsyncWallpaperLoadFinished(); |
+ wallpaper_manager_test_utils::WaitAsyncWallpaperLoadFinished(); |
// SetWallpaperFromImageSkia should update wallpaper cache when multi-profile |
// is turned on. |
EXPECT_TRUE(test_api->GetWallpaperFromCache(kTestUser1, &cached_wallpaper)); |
@@ -703,14 +552,14 @@ IN_PROC_BROWSER_TEST_P(WallpaperManagerBrowserTestCacheUpdate, |
User::CUSTOMIZED, |
green_wallpaper, |
true); |
- WaitAsyncWallpaperLoadFinished(); |
+ wallpaper_manager_test_utils::WaitAsyncWallpaperLoadFinished(); |
// SetCustomWallpaper should also update wallpaper cache when multi-profile is |
// turned on. |
EXPECT_TRUE(test_api->GetWallpaperFromCache(kTestUser1, &cached_wallpaper)); |
EXPECT_TRUE(cached_wallpaper.BackedBySameObjectAs(green_wallpaper)); |
wallpaper_manager->SetDefaultWallpaperNow(kTestUser1); |
- WaitAsyncWallpaperLoadFinished(); |
+ wallpaper_manager_test_utils::WaitAsyncWallpaperLoadFinished(); |
// SetDefaultWallpaper should invalidate the user's wallpaper cache. |
EXPECT_FALSE(test_api->GetWallpaperFromCache(kTestUser1, &cached_wallpaper)); |
} |
@@ -776,70 +625,71 @@ IN_PROC_BROWSER_TEST_P(WallpaperManagerBrowserTest, DISABLED_DisplayChange) { |
// Set the wallpaper to ensure that UpdateWallpaper() will be called when the |
// display configuration changes. |
- gfx::ImageSkia image = CreateTestImage(640, 480, kCustomWallpaperColor); |
+ gfx::ImageSkia image = wallpaper_manager_test_utils::CreateTestImage( |
+ 640, 480, wallpaper_manager_test_utils::kCustomWallpaperColor); |
controller_->SetWallpaperImage(image, WALLPAPER_LAYOUT_STRETCH); |
// Small wallpaper images should be used for configurations less than or |
// equal to kSmallWallpaperMaxWidth by kSmallWallpaperMaxHeight, even if |
// multiple displays are connected. |
UpdateDisplay("800x600"); |
- WaitAsyncWallpaperLoadFinished(); |
+ wallpaper_manager_test_utils::WaitAsyncWallpaperLoadFinished(); |
EXPECT_EQ(WallpaperManager::WALLPAPER_RESOLUTION_SMALL, |
WallpaperManager::Get()->GetAppropriateResolution()); |
EXPECT_EQ(0, observer.GetUpdateWallpaperCountAndReset()); |
UpdateDisplay("800x600,800x600"); |
- WaitAsyncWallpaperLoadFinished(); |
+ wallpaper_manager_test_utils::WaitAsyncWallpaperLoadFinished(); |
EXPECT_EQ(WallpaperManager::WALLPAPER_RESOLUTION_SMALL, |
WallpaperManager::Get()->GetAppropriateResolution()); |
EXPECT_EQ(0, observer.GetUpdateWallpaperCountAndReset()); |
UpdateDisplay("1366x800"); |
- WaitAsyncWallpaperLoadFinished(); |
+ wallpaper_manager_test_utils::WaitAsyncWallpaperLoadFinished(); |
EXPECT_EQ(WallpaperManager::WALLPAPER_RESOLUTION_SMALL, |
WallpaperManager::Get()->GetAppropriateResolution()); |
EXPECT_EQ(1, observer.GetUpdateWallpaperCountAndReset()); |
// At larger sizes, large wallpapers should be used. |
UpdateDisplay("1367x800"); |
- WaitAsyncWallpaperLoadFinished(); |
+ wallpaper_manager_test_utils::WaitAsyncWallpaperLoadFinished(); |
EXPECT_EQ(WallpaperManager::WALLPAPER_RESOLUTION_LARGE, |
WallpaperManager::Get()->GetAppropriateResolution()); |
EXPECT_EQ(1, observer.GetUpdateWallpaperCountAndReset()); |
UpdateDisplay("1367x801"); |
- WaitAsyncWallpaperLoadFinished(); |
+ wallpaper_manager_test_utils::WaitAsyncWallpaperLoadFinished(); |
EXPECT_EQ(WallpaperManager::WALLPAPER_RESOLUTION_LARGE, |
WallpaperManager::Get()->GetAppropriateResolution()); |
EXPECT_EQ(1, observer.GetUpdateWallpaperCountAndReset()); |
UpdateDisplay("2560x1700"); |
- WaitAsyncWallpaperLoadFinished(); |
+ wallpaper_manager_test_utils::WaitAsyncWallpaperLoadFinished(); |
EXPECT_EQ(WallpaperManager::WALLPAPER_RESOLUTION_LARGE, |
WallpaperManager::Get()->GetAppropriateResolution()); |
EXPECT_EQ(1, observer.GetUpdateWallpaperCountAndReset()); |
// Rotated smaller screen may use larger image. |
UpdateDisplay("800x600/r"); |
- WaitAsyncWallpaperLoadFinished(); |
+ wallpaper_manager_test_utils::WaitAsyncWallpaperLoadFinished(); |
EXPECT_EQ(WallpaperManager::WALLPAPER_RESOLUTION_SMALL, |
WallpaperManager::Get()->GetAppropriateResolution()); |
EXPECT_EQ(1, observer.GetUpdateWallpaperCountAndReset()); |
UpdateDisplay("800x600/r,800x600"); |
- WaitAsyncWallpaperLoadFinished(); |
+ wallpaper_manager_test_utils::WaitAsyncWallpaperLoadFinished(); |
EXPECT_EQ(WallpaperManager::WALLPAPER_RESOLUTION_SMALL, |
WallpaperManager::Get()->GetAppropriateResolution()); |
EXPECT_EQ(1, observer.GetUpdateWallpaperCountAndReset()); |
UpdateDisplay("1366x800/r"); |
- WaitAsyncWallpaperLoadFinished(); |
+ wallpaper_manager_test_utils::WaitAsyncWallpaperLoadFinished(); |
EXPECT_EQ(WallpaperManager::WALLPAPER_RESOLUTION_LARGE, |
WallpaperManager::Get()->GetAppropriateResolution()); |
EXPECT_EQ(1, observer.GetUpdateWallpaperCountAndReset()); |
// Max display size didn't chagne. |
UpdateDisplay("900x800/r,400x1366"); |
- WaitAsyncWallpaperLoadFinished(); |
+ wallpaper_manager_test_utils::WaitAsyncWallpaperLoadFinished(); |
EXPECT_EQ(0, observer.GetUpdateWallpaperCountAndReset()); |
} |
@@ -851,80 +701,86 @@ IN_PROC_BROWSER_TEST_P(WallpaperManagerBrowserTest, SmallDefaultWallpaper) { |
if (!ash::test::AshTestHelper::SupportsMultipleDisplays()) |
return; |
- WriteWallpapers(); |
+ CreateCmdlineWallpapers(); |
// At 800x600, the small wallpaper should be loaded. |
UpdateDisplay("800x600"); |
WallpaperManager::Get()->SetDefaultWallpaperNow(std::string()); |
- WaitAsyncWallpaperLoadFinished(); |
- EXPECT_TRUE( |
- ImageIsNearColor(controller_->GetWallpaper(), kSmallWallpaperColor)); |
+ wallpaper_manager_test_utils::WaitAsyncWallpaperLoadFinished(); |
+ EXPECT_TRUE(wallpaper_manager_test_utils::ImageIsNearColor( |
+ controller_->GetWallpaper(), |
+ wallpaper_manager_test_utils::kSmallDefaultWallpaperColor)); |
} |
IN_PROC_BROWSER_TEST_P(WallpaperManagerBrowserTest, LargeDefaultWallpaper) { |
if (!ash::test::AshTestHelper::SupportsMultipleDisplays()) |
return; |
- WriteWallpapers(); |
+ CreateCmdlineWallpapers(); |
UpdateDisplay("1600x1200"); |
WallpaperManager::Get()->SetDefaultWallpaperNow(std::string()); |
- WaitAsyncWallpaperLoadFinished(); |
- EXPECT_TRUE( |
- ImageIsNearColor(controller_->GetWallpaper(), kLargeWallpaperColor)); |
+ wallpaper_manager_test_utils::WaitAsyncWallpaperLoadFinished(); |
+ EXPECT_TRUE(wallpaper_manager_test_utils::ImageIsNearColor( |
+ controller_->GetWallpaper(), |
+ wallpaper_manager_test_utils::kLargeDefaultWallpaperColor)); |
} |
IN_PROC_BROWSER_TEST_P(WallpaperManagerBrowserTest, |
LargeDefaultWallpaperWhenRotated) { |
if (!ash::test::AshTestHelper::SupportsMultipleDisplays()) |
return; |
- WriteWallpapers(); |
+ CreateCmdlineWallpapers(); |
UpdateDisplay("1200x800/r"); |
WallpaperManager::Get()->SetDefaultWallpaperNow(std::string()); |
- WaitAsyncWallpaperLoadFinished(); |
- EXPECT_TRUE( |
- ImageIsNearColor(controller_->GetWallpaper(), kLargeWallpaperColor)); |
+ wallpaper_manager_test_utils::WaitAsyncWallpaperLoadFinished(); |
+ EXPECT_TRUE(wallpaper_manager_test_utils::ImageIsNearColor( |
+ controller_->GetWallpaper(), |
+ wallpaper_manager_test_utils::kLargeDefaultWallpaperColor)); |
} |
IN_PROC_BROWSER_TEST_P(WallpaperManagerBrowserTest, SmallGuestWallpaper) { |
if (!ash::test::AshTestHelper::SupportsMultipleDisplays()) |
return; |
- WriteWallpapers(); |
+ CreateCmdlineWallpapers(); |
UserManager::Get()->UserLoggedIn( |
UserManager::kGuestUserName, UserManager::kGuestUserName, false); |
UpdateDisplay("800x600"); |
WallpaperManager::Get()->SetDefaultWallpaperNow(std::string()); |
- WaitAsyncWallpaperLoadFinished(); |
- EXPECT_TRUE( |
- ImageIsNearColor(controller_->GetWallpaper(), kSmallGuestWallpaperColor)); |
+ wallpaper_manager_test_utils::WaitAsyncWallpaperLoadFinished(); |
+ EXPECT_TRUE(wallpaper_manager_test_utils::ImageIsNearColor( |
+ controller_->GetWallpaper(), |
+ wallpaper_manager_test_utils::kSmallGuestWallpaperColor)); |
} |
IN_PROC_BROWSER_TEST_P(WallpaperManagerBrowserTest, LargeGuestWallpaper) { |
if (!ash::test::AshTestHelper::SupportsMultipleDisplays()) |
return; |
- WriteWallpapers(); |
+ CreateCmdlineWallpapers(); |
UserManager::Get()->UserLoggedIn( |
UserManager::kGuestUserName, UserManager::kGuestUserName, false); |
UpdateDisplay("1600x1200"); |
WallpaperManager::Get()->SetDefaultWallpaperNow(std::string()); |
- WaitAsyncWallpaperLoadFinished(); |
- EXPECT_TRUE( |
- ImageIsNearColor(controller_->GetWallpaper(), kLargeGuestWallpaperColor)); |
+ wallpaper_manager_test_utils::WaitAsyncWallpaperLoadFinished(); |
+ EXPECT_TRUE(wallpaper_manager_test_utils::ImageIsNearColor( |
+ controller_->GetWallpaper(), |
+ wallpaper_manager_test_utils::kLargeGuestWallpaperColor)); |
} |
IN_PROC_BROWSER_TEST_P(WallpaperManagerBrowserTest, |
SwitchBetweenDefaultAndCustom) { |
// Start loading the default wallpaper. |
UpdateDisplay("640x480"); |
- WriteWallpapers(); |
+ CreateCmdlineWallpapers(); |
UserManager::Get()->UserLoggedIn(UserManager::kStubUser, "test_hash", false); |
WallpaperManager::Get()->SetDefaultWallpaperNow(std::string()); |
// Custom wallpaper should be applied immediately, canceling the default |
// wallpaper load task. |
- gfx::ImageSkia image = CreateTestImage(640, 480, kCustomWallpaperColor); |
+ gfx::ImageSkia image = wallpaper_manager_test_utils::CreateTestImage( |
+ 640, 480, wallpaper_manager_test_utils::kCustomWallpaperColor); |
WallpaperManager::Get()->SetCustomWallpaper(UserManager::kStubUser, |
"test_hash", |
"test-nofile.jpeg", |
@@ -932,16 +788,18 @@ IN_PROC_BROWSER_TEST_P(WallpaperManagerBrowserTest, |
User::CUSTOMIZED, |
image, |
true); |
- WaitAsyncWallpaperLoadFinished(); |
+ wallpaper_manager_test_utils::WaitAsyncWallpaperLoadFinished(); |
- EXPECT_TRUE( |
- ImageIsNearColor(controller_->GetWallpaper(), kCustomWallpaperColor)); |
+ EXPECT_TRUE(wallpaper_manager_test_utils::ImageIsNearColor( |
+ controller_->GetWallpaper(), |
+ wallpaper_manager_test_utils::kCustomWallpaperColor)); |
WallpaperManager::Get()->SetDefaultWallpaperNow(std::string()); |
- WaitAsyncWallpaperLoadFinished(); |
+ wallpaper_manager_test_utils::WaitAsyncWallpaperLoadFinished(); |
- EXPECT_TRUE( |
- ImageIsNearColor(controller_->GetWallpaper(), kSmallWallpaperColor)); |
+ EXPECT_TRUE(wallpaper_manager_test_utils::ImageIsNearColor( |
+ controller_->GetWallpaper(), |
+ wallpaper_manager_test_utils::kSmallDefaultWallpaperColor)); |
} |
} // namespace chromeos |