Update To 11.40.268.0
[platform/framework/web/crosswalk.git] / src / chrome / browser / chromeos / extensions / default_app_order_unittest.cc
index 721fa47..2eda449 100644 (file)
@@ -7,12 +7,12 @@
 #include <string>
 #include <vector>
 
-#include "base/file_util.h"
 #include "base/files/file_path.h"
+#include "base/files/file_util.h"
 #include "base/files/scoped_temp_dir.h"
 #include "base/memory/scoped_ptr.h"
-#include "base/path_service.h"
 #include "base/test/scoped_path_override.h"
+#include "chrome/common/extensions/extension_constants.h"
 #include "chromeos/chromeos_paths.h"
 #include "testing/gtest/include/gtest/gtest.h"
 
@@ -30,10 +30,10 @@ class DefaultAppOrderTest : public testing::Test {
   virtual ~DefaultAppOrderTest() {}
 
   // testing::Test overrides:
-  virtual void SetUp() OVERRIDE {
+  virtual void SetUp() override {
     default_app_order::Get(&built_in_default_);
   }
-  virtual void TearDown() OVERRIDE {
+  virtual void TearDown() override {
   }
 
   bool IsBuiltInDefault(const std::vector<std::string>& apps) {
@@ -127,4 +127,22 @@ TEST_F(DefaultAppOrderTest, BadExternalFile) {
   EXPECT_TRUE(IsBuiltInDefault(apps));
 }
 
+TEST_F(DefaultAppOrderTest, ImportDefault) {
+  const char kExternalOrder[] =
+      "[\"app1\","
+      "{ \"import_default_order\": true }, \"app2\"]";
+  CreateExternalOrderFile(std::string(kExternalOrder));
+
+  scoped_ptr<default_app_order::ExternalLoader> loader(
+      new default_app_order::ExternalLoader(false));
+
+  std::vector<std::string> apps;
+  default_app_order::Get(&apps);
+  EXPECT_EQ(default_app_order::kDefaultAppOrderCount + 2, apps.size());
+  EXPECT_EQ(std::string("app1"), apps[0]);
+  EXPECT_EQ(extension_misc::kChromeAppId, apps[1]);
+  EXPECT_EQ(std::string("app2"),
+            apps[default_app_order::kDefaultAppOrderCount + 1]);
+}
+
 }  // namespace chromeos