Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(798)

Side by Side Diff: chrome/browser/ui/ash/launcher/chrome_launcher_controller_impl_unittest.cc

Issue 2484413002: Enhance chrome.app.window API with title property
Patch Set: Rebase Created 4 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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 #include "chrome/browser/ui/ash/launcher/chrome_launcher_controller_impl.h" 5 #include "chrome/browser/ui/ash/launcher/chrome_launcher_controller_impl.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 8
9 #include <algorithm> 9 #include <algorithm>
10 #include <map> 10 #include <map>
(...skipping 233 matching lines...) Expand 10 before | Expand all | Expand 10 after
244 }; 244 };
245 245
246 // Test implementation of a V2 app launcher item controller. 246 // Test implementation of a V2 app launcher item controller.
247 class TestV2AppLauncherItemController : public LauncherItemController { 247 class TestV2AppLauncherItemController : public LauncherItemController {
248 public: 248 public:
249 TestV2AppLauncherItemController(const std::string& app_id, 249 TestV2AppLauncherItemController(const std::string& app_id,
250 ChromeLauncherController* controller) 250 ChromeLauncherController* controller)
251 : LauncherItemController(LauncherItemController::TYPE_APP, 251 : LauncherItemController(LauncherItemController::TYPE_APP,
252 app_id, 252 app_id,
253 "", 253 "",
254 "",
254 controller) {} 255 controller) {}
255 256
256 ~TestV2AppLauncherItemController() override {} 257 ~TestV2AppLauncherItemController() override {}
257 258
258 // Override for LauncherItemController: 259 // Override for LauncherItemController:
259 bool IsVisible() const override { return true; } 260 bool IsVisible() const override { return true; }
260 void Launch(ash::LaunchSource source, int event_flags) override {} 261 void Launch(ash::LaunchSource source, int event_flags) override {}
261 ash::ShelfItemDelegate::PerformedAction Activate( 262 ash::ShelfItemDelegate::PerformedAction Activate(
262 ash::LaunchSource source) override { 263 ash::LaunchSource source) override {
263 return kExistingWindowActivated; 264 return kExistingWindowActivated;
(...skipping 139 matching lines...) Expand 10 before | Expand all | Expand 10 after
403 arc_support_host_ = Extension::Create(base::FilePath(), Manifest::UNPACKED, 404 arc_support_host_ = Extension::Create(base::FilePath(), Manifest::UNPACKED,
404 manifest, Extension::NO_FLAGS, 405 manifest, Extension::NO_FLAGS,
405 ArcSupportHost::kHostAppId, &error); 406 ArcSupportHost::kHostAppId, &error);
406 } 407 }
407 408
408 // Creates a running V2 app (not pinned) of type |app_id|. 409 // Creates a running V2 app (not pinned) of type |app_id|.
409 virtual void CreateRunningV2App(const std::string& app_id) { 410 virtual void CreateRunningV2App(const std::string& app_id) {
410 DCHECK(!test_controller_); 411 DCHECK(!test_controller_);
411 ash::ShelfID id = 412 ash::ShelfID id =
412 launcher_controller_->CreateAppShortcutLauncherItemWithType( 413 launcher_controller_->CreateAppShortcutLauncherItemWithType(
413 ash::launcher::AppLauncherId(app_id), model_->item_count(), 414 ash::launcher::AppLauncherId(app_id), "", model_->item_count(),
414 ash::TYPE_PLATFORM_APP); 415 ash::TYPE_PLATFORM_APP);
415 DCHECK(id); 416 DCHECK(id);
416 // Change the created launcher controller into a V2 app controller. 417 // Change the created launcher controller into a V2 app controller.
417 test_controller_ = new TestV2AppLauncherItemController(app_id, 418 test_controller_ = new TestV2AppLauncherItemController(app_id,
418 launcher_controller_.get()); 419 launcher_controller_.get());
419 launcher_controller_->SetItemController(id, test_controller_); 420 launcher_controller_->SetItemController(id, test_controller_);
420 } 421 }
421 422
422 // Sets the stage for a multi user test. 423 // Sets the stage for a multi user test.
423 virtual void SetUpMultiUserScenario(syncer::SyncChangeList* user_a, 424 virtual void SetUpMultiUserScenario(syncer::SyncChangeList* user_a,
(...skipping 3054 matching lines...) Expand 10 before | Expand all | Expand 10 after
3478 // ChromeLauncherControllerImpl. 3479 // ChromeLauncherControllerImpl.
3479 TestAppIconLoaderImpl* app_icon_loader1 = new TestAppIconLoaderImpl(); 3480 TestAppIconLoaderImpl* app_icon_loader1 = new TestAppIconLoaderImpl();
3480 TestAppIconLoaderImpl* app_icon_loader2 = new TestAppIconLoaderImpl(); 3481 TestAppIconLoaderImpl* app_icon_loader2 = new TestAppIconLoaderImpl();
3481 app_icon_loader1->AddSupportedApp(app_id1); 3482 app_icon_loader1->AddSupportedApp(app_id1);
3482 app_icon_loader2->AddSupportedApp(app_id2); 3483 app_icon_loader2->AddSupportedApp(app_id2);
3483 SetAppIconLoaders(std::unique_ptr<AppIconLoader>(app_icon_loader1), 3484 SetAppIconLoaders(std::unique_ptr<AppIconLoader>(app_icon_loader1),
3484 std::unique_ptr<AppIconLoader>(app_icon_loader2)); 3485 std::unique_ptr<AppIconLoader>(app_icon_loader2));
3485 3486
3486 AppWindowLauncherItemController* app_controller3 = 3487 AppWindowLauncherItemController* app_controller3 =
3487 new ExtensionAppWindowLauncherItemController( 3488 new ExtensionAppWindowLauncherItemController(
3488 LauncherItemController::TYPE_APP, app_id3, "id", 3489 LauncherItemController::TYPE_APP, app_id3, "id", "",
3489 launcher_controller_.get()); 3490 launcher_controller_.get());
3490 const ash::ShelfID shelfId3 = launcher_controller_->CreateAppLauncherItem( 3491 const ash::ShelfID shelfId3 = launcher_controller_->CreateAppLauncherItem(
3491 app_controller3, app_id3, ash::STATUS_RUNNING); 3492 app_controller3, app_id3, ash::STATUS_RUNNING);
3492 EXPECT_EQ(0, app_icon_loader1->fetch_count()); 3493 EXPECT_EQ(0, app_icon_loader1->fetch_count());
3493 EXPECT_EQ(0, app_icon_loader1->clear_count()); 3494 EXPECT_EQ(0, app_icon_loader1->clear_count());
3494 EXPECT_EQ(0, app_icon_loader2->fetch_count()); 3495 EXPECT_EQ(0, app_icon_loader2->fetch_count());
3495 EXPECT_EQ(0, app_icon_loader2->clear_count()); 3496 EXPECT_EQ(0, app_icon_loader2->clear_count());
3496 3497
3497 AppWindowLauncherItemController* app_controller2 = 3498 AppWindowLauncherItemController* app_controller2 =
3498 new ExtensionAppWindowLauncherItemController( 3499 new ExtensionAppWindowLauncherItemController(
3499 LauncherItemController::TYPE_APP, app_id2, "id", 3500 LauncherItemController::TYPE_APP, app_id2, "id", "",
3500 launcher_controller_.get()); 3501 launcher_controller_.get());
3501 const ash::ShelfID shelfId2 = launcher_controller_->CreateAppLauncherItem( 3502 const ash::ShelfID shelfId2 = launcher_controller_->CreateAppLauncherItem(
3502 app_controller2, app_id2, ash::STATUS_RUNNING); 3503 app_controller2, app_id2, ash::STATUS_RUNNING);
3503 EXPECT_EQ(0, app_icon_loader1->fetch_count()); 3504 EXPECT_EQ(0, app_icon_loader1->fetch_count());
3504 EXPECT_EQ(0, app_icon_loader1->clear_count()); 3505 EXPECT_EQ(0, app_icon_loader1->clear_count());
3505 EXPECT_EQ(1, app_icon_loader2->fetch_count()); 3506 EXPECT_EQ(1, app_icon_loader2->fetch_count());
3506 EXPECT_EQ(0, app_icon_loader2->clear_count()); 3507 EXPECT_EQ(0, app_icon_loader2->clear_count());
3507 3508
3508 AppWindowLauncherItemController* app_controller1 = 3509 AppWindowLauncherItemController* app_controller1 =
3509 new ExtensionAppWindowLauncherItemController( 3510 new ExtensionAppWindowLauncherItemController(
3510 LauncherItemController::TYPE_APP, app_id1, "id", 3511 LauncherItemController::TYPE_APP, app_id1, "id", "",
3511 launcher_controller_.get()); 3512 launcher_controller_.get());
3512 3513
3513 const ash::ShelfID shelfId1 = launcher_controller_->CreateAppLauncherItem( 3514 const ash::ShelfID shelfId1 = launcher_controller_->CreateAppLauncherItem(
3514 app_controller1, app_id1, ash::STATUS_RUNNING); 3515 app_controller1, app_id1, ash::STATUS_RUNNING);
3515 EXPECT_EQ(1, app_icon_loader1->fetch_count()); 3516 EXPECT_EQ(1, app_icon_loader1->fetch_count());
3516 EXPECT_EQ(0, app_icon_loader1->clear_count()); 3517 EXPECT_EQ(0, app_icon_loader1->clear_count());
3517 EXPECT_EQ(1, app_icon_loader2->fetch_count()); 3518 EXPECT_EQ(1, app_icon_loader2->fetch_count());
3518 EXPECT_EQ(0, app_icon_loader2->clear_count()); 3519 EXPECT_EQ(0, app_icon_loader2->clear_count());
3519 3520
3520 launcher_controller_->CloseLauncherItem(shelfId1); 3521 launcher_controller_->CloseLauncherItem(shelfId1);
(...skipping 509 matching lines...) Expand 10 before | Expand all | Expand 10 after
4030 4031
4031 // Pinned state should not change. 4032 // Pinned state should not change.
4032 EXPECT_EQ("AppList, Chrome, App1, App2", GetPinnedAppStatus()); 4033 EXPECT_EQ("AppList, Chrome, App1, App2", GetPinnedAppStatus());
4033 launcher_controller_->UnpinAppWithID(extension2_->id()); 4034 launcher_controller_->UnpinAppWithID(extension2_->id());
4034 EXPECT_EQ("AppList, Chrome, App1", GetPinnedAppStatus()); 4035 EXPECT_EQ("AppList, Chrome, App1", GetPinnedAppStatus());
4035 4036
4036 // Resume syncing and sync information overrides local copy. 4037 // Resume syncing and sync information overrides local copy.
4037 StartAppSyncService(copy_sync_list); 4038 StartAppSyncService(copy_sync_list);
4038 EXPECT_EQ("AppList, Chrome, App1, App2", GetPinnedAppStatus()); 4039 EXPECT_EQ("AppList, Chrome, App1, App2", GetPinnedAppStatus());
4039 } 4040 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698