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

Unified Diff: chrome/browser/ui/app_list/app_list_extension_sorting_unittest.cc

Issue 17038002: Separate the NTP app ordering from the app list app ordering (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rename app_list_extension_ordering to app_list_extension_sorting for consistency Created 7 years, 5 months 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/ui/app_list/app_list_extension_sorting_unittest.cc
diff --git a/chrome/browser/ui/app_list/app_list_extension_sorting_unittest.cc b/chrome/browser/ui/app_list/app_list_extension_sorting_unittest.cc
new file mode 100644
index 0000000000000000000000000000000000000000..6ee3d900423ecc788a21cfe62807af0105bb9e6e
--- /dev/null
+++ b/chrome/browser/ui/app_list/app_list_extension_sorting_unittest.cc
@@ -0,0 +1,145 @@
+// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#include "chrome/browser/ui/app_list/app_list_extension_sorting.h"
+
+#include <string>
+
+#include "chrome/browser/extensions/extension_prefs_unittest.h"
+#include "chrome/browser/extensions/test_extension_service.h"
+#include "chrome/common/extensions/extension_constants.h"
+#include "sync/api/string_ordinal.h"
+#include "testing/gtest/include/gtest/gtest.h"
+
+namespace {
+
+const char kHostedAppId[] = "dceacbkfkmllgmjmbhgkpjegnodmildf";
+const char kPackagedApp1Id[] = "emfkafnhnpcmabnnkckkchdilgeoekbo";
+const char kPackagedApp2Id[] = "jlklkagmeajbjiobondfhiekepofmljl";
+
+class MockExtensionService : public TestExtensionService {
+ public:
+ virtual const extensions::Extension* GetInstalledExtension(
+ const std::string& id) const OVERRIDE {
+ return NULL;
+ }
+ virtual void SyncExtensionChangeIfNeeded(
+ const extensions::Extension& extension) OVERRIDE {}
+};
+
+} // namespace
+
+class AppListExtensionSortingTest : public extensions::ExtensionPrefsTest {
+ public:
+ virtual void SetUp() OVERRIDE {
+ prefs()->app_list_extension_sorting()->
+ SetExtensionService(&extension_service_);
+ extensions::ExtensionPrefsTest::SetUp();
+ }
+ protected:
xiyuan 2013/07/05 06:06:18 nit: insert en empty line before
calamity 2013/07/11 03:31:00 Done.
+ AppListExtensionSorting* app_list_extension_sorting() {
+ return prefs()->app_list_extension_sorting();
+ }
+
+ private:
+ MockExtensionService extension_service_;
xiyuan 2013/07/05 06:06:18 DISALLOW_COPY_AND_ASSIGN(...);
calamity 2013/07/11 03:31:00 Doesn't compile. I get 'no appropriate default con
xiyuan 2013/07/11 05:39:29 You need a default constructor. Try add AppListEx
calamity 2013/07/15 07:02:32 Done.
+};
+
+class AppListExtensionSortingInsertion : public AppListExtensionSortingTest {
+public:
xiyuan 2013/07/05 06:06:18 nit: fix wrong indent here and the rest of the fil
calamity 2013/07/11 03:31:00 Done.
+ virtual void Initialize() OVERRIDE {
+ app_list_extension_sorting()->InsertAtFront(kHostedAppId);
+ app_list_extension_sorting()->InsertAtFront(kPackagedApp1Id);
+ app_list_extension_sorting()->InsertAtBack(kPackagedApp2Id);
+ }
+
+ virtual void Verify() OVERRIDE {
+ EXPECT_TRUE(app_list_extension_sorting()->
+ ExtensionPrecedes(kPackagedApp1Id, kHostedAppId));
+ EXPECT_TRUE(app_list_extension_sorting()->
+ ExtensionPrecedes(kHostedAppId, kPackagedApp2Id));
+ EXPECT_TRUE(app_list_extension_sorting()->
+ ExtensionPrecedes(kPackagedApp1Id, kPackagedApp2Id));
+ }
+};
+TEST_F(AppListExtensionSortingInsertion, AppListExtensionSortingInsertion) {}
+
+class AppListExtensionSortingContains : public AppListExtensionSortingTest {
+public:
+ virtual void Initialize() OVERRIDE {
+ EXPECT_FALSE(app_list_extension_sorting()->Contains(kHostedAppId));
+ app_list_extension_sorting()->InsertAtFront(kHostedAppId);
+ EXPECT_FALSE(app_list_extension_sorting()->Contains(kPackagedApp1Id));
+ app_list_extension_sorting()->InsertAtBack(kPackagedApp1Id);
+ EXPECT_FALSE(app_list_extension_sorting()->Contains(kPackagedApp2Id));
+ app_list_extension_sorting()->InsertAtBack(kPackagedApp2Id);
+ }
+
+ virtual void Verify() OVERRIDE {
+ EXPECT_TRUE(app_list_extension_sorting()->Contains(kHostedAppId));
+ EXPECT_TRUE(app_list_extension_sorting()->Contains(kPackagedApp1Id));
+ EXPECT_TRUE(app_list_extension_sorting()->Contains(kPackagedApp2Id));
+ }
+};
+TEST_F(AppListExtensionSortingContains, AppListExtensionSortingContains) {}
+
+class AppListExtensionSortingErase : public AppListExtensionSortingTest {
+public:
+ virtual void Initialize() OVERRIDE {
+ app_list_extension_sorting()->InsertAtFront(kHostedAppId);
+ EXPECT_TRUE(app_list_extension_sorting()->Contains(kHostedAppId));
+ app_list_extension_sorting()->Erase(kHostedAppId);
+ }
+
+ virtual void Verify() OVERRIDE {
+ EXPECT_FALSE(app_list_extension_sorting()->Contains(kHostedAppId));
+ }
+};
+TEST_F(AppListExtensionSortingErase, AppListExtensionSortingErase) {}
+
+class AppListExtensionSortingFixSyncCollisions
+ : public AppListExtensionSortingTest {
+public:
+ virtual void Initialize() OVERRIDE {
+ syncer::StringOrdinal conflict_ordinal =
+ syncer::StringOrdinal::CreateInitialOrdinal();
+ app_list_extension_sorting()->
+ UpdateAppListOrdinalFromSync(kHostedAppId, conflict_ordinal);
+ app_list_extension_sorting()->
+ UpdateAppListOrdinalFromSync(kPackagedApp1Id, conflict_ordinal);
+ app_list_extension_sorting()->
+ UpdateAppListOrdinalFromSync(kPackagedApp2Id, conflict_ordinal);
+
+ app_list_extension_sorting()->FixSyncCollisions();
+ }
+
+ virtual void Verify() OVERRIDE {
+ // Conflicts are ordered by extension id.
+ EXPECT_TRUE(app_list_extension_sorting()->
+ ExtensionPrecedes(kHostedAppId, kPackagedApp1Id));
+ EXPECT_TRUE(app_list_extension_sorting()->
+ ExtensionPrecedes(kPackagedApp1Id, kPackagedApp2Id));
+ }
+};
+TEST_F(AppListExtensionSortingFixSyncCollisions,
+ AppListExtensionSortingFixSyncCollisions) {}
+
+class AppListExtensionSortingDefaultAppOrder
+ : public AppListExtensionSortingTest {
+public:
+ virtual void Initialize() OVERRIDE {
+ extensions::ExtensionIdList ids;
+ ids.push_back(kPackagedApp1Id);
+ app_list_extension_sorting()->Initialize(ids);
+ }
+
+ virtual void Verify() OVERRIDE {
+ EXPECT_TRUE(app_list_extension_sorting()->
+ ExtensionPrecedes(extension_misc::kChromeAppId,
+ extension_misc::kWebStoreAppId));
+ EXPECT_FALSE(app_list_extension_sorting()->Contains(kPackagedApp1Id));
+ }
+};
+TEST_F(AppListExtensionSortingDefaultAppOrder,
+ AppListExtensionSortingDefaultAppOrder) {}

Powered by Google App Engine
This is Rietveld 408576698