Index: chrome/browser/chromeos/extensions/file_manager/url_util_unittest.cc |
diff --git a/chrome/browser/chromeos/extensions/file_manager/url_util_unittest.cc b/chrome/browser/chromeos/extensions/file_manager/url_util_unittest.cc |
deleted file mode 100644 |
index 88b327e59aba166b4934bffee1075be357a94d40..0000000000000000000000000000000000000000 |
--- a/chrome/browser/chromeos/extensions/file_manager/url_util_unittest.cc |
+++ /dev/null |
@@ -1,135 +0,0 @@ |
-// Copyright 2013 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/chromeos/extensions/file_manager/url_util.h" |
- |
-#include "base/files/file_path.h" |
-#include "base/json/json_reader.h" |
-#include "base/json/json_writer.h" |
-#include "base/memory/scoped_ptr.h" |
-#include "base/strings/utf_string_conversions.h" |
-#include "base/values.h" |
-#include "net/base/escape.h" |
-#include "testing/gtest/include/gtest/gtest.h" |
- |
-namespace file_manager { |
-namespace util { |
-namespace { |
- |
-// Pretty print the JSON escaped in the query string. |
-std::string PrettyPrintEscapedJson(const std::string& query) { |
- const std::string json = net::UnescapeURLComponent( |
- query, net::UnescapeRule::SPACES | net::UnescapeRule::URL_SPECIAL_CHARS); |
- scoped_ptr<base::Value> value(base::JSONReader::Read(json)); |
- std::string pretty_json; |
- base::JSONWriter::WriteWithOptions(value.get(), |
- base::JSONWriter::OPTIONS_PRETTY_PRINT, |
- &pretty_json); |
- return pretty_json; |
-} |
- |
-TEST(FileManagerUrlUtilTest, GetFileManagerBaseUrl) { |
- EXPECT_EQ("chrome-extension://hhaomjibdihmijegdhdafkllkbggdgoj/", |
- GetFileManagerBaseUrl().spec()); |
-} |
- |
-TEST(FileManagerUrlUtilTest, GetFileManagerMainPageUrl) { |
- EXPECT_EQ("chrome-extension://hhaomjibdihmijegdhdafkllkbggdgoj/main.html", |
- GetFileManagerMainPageUrl().spec()); |
-} |
- |
-TEST(FileManagerUrlUtilTest, GetFileManagerMainPageUrlWithParams_NoFileTypes) { |
- const GURL url = GetFileManagerMainPageUrlWithParams( |
- ui::SelectFileDialog::SELECT_OPEN_FILE, |
- base::UTF8ToUTF16("some title"), |
- base::FilePath::FromUTF8Unsafe("foo.txt"), |
- NULL, // No file types |
- 0, // Hence no file type index. |
- FILE_PATH_LITERAL("txt")); |
- EXPECT_EQ("chrome-extension", url.scheme()); |
- EXPECT_EQ("hhaomjibdihmijegdhdafkllkbggdgoj", url.host()); |
- EXPECT_EQ("/main.html", url.path()); |
- // Confirm that "%20" is used instead of "+" in the query. |
- EXPECT_TRUE(url.query().find("+") == std::string::npos); |
- EXPECT_TRUE(url.query().find("%20") != std::string::npos); |
- // The escaped query is hard to read. Pretty print the escaped JSON. |
- EXPECT_EQ("{\n" |
- " \"defaultExtension\": \"txt\",\n" |
- " \"defaultPath\": \"foo.txt\",\n" |
- " \"shouldReturnLocalPath\": true,\n" |
- " \"title\": \"some title\",\n" |
- " \"type\": \"open-file\"\n" |
- "}\n", |
- PrettyPrintEscapedJson(url.query())); |
-} |
- |
-TEST(FileManagerUrlUtilTest, |
- GetFileManagerMainPageUrlWithParams_WithFileTypes) { |
- // Create a FileTypeInfo which looks like: |
- // extensions: [["htm", "html"], ["txt"]] |
- // descriptions: ["HTML", "TEXT"] |
- ui::SelectFileDialog::FileTypeInfo file_types; |
- file_types.extensions.push_back(std::vector<base::FilePath::StringType>()); |
- file_types.extensions[0].push_back(FILE_PATH_LITERAL("htm")); |
- file_types.extensions[0].push_back(FILE_PATH_LITERAL("html")); |
- file_types.extensions.push_back(std::vector<base::FilePath::StringType>()); |
- file_types.extensions[1].push_back(FILE_PATH_LITERAL("txt")); |
- file_types.extension_description_overrides.push_back( |
- base::UTF8ToUTF16("HTML")); |
- file_types.extension_description_overrides.push_back( |
- base::UTF8ToUTF16("TEXT")); |
- // "shouldReturnLocalPath" will be false if drive is supported. |
- file_types.support_drive = true; |
- |
- const GURL url = GetFileManagerMainPageUrlWithParams( |
- ui::SelectFileDialog::SELECT_OPEN_FILE, |
- base::UTF8ToUTF16("some title"), |
- base::FilePath::FromUTF8Unsafe("foo.txt"), |
- &file_types, |
- 1, // The file type index is 1-based. |
- FILE_PATH_LITERAL("txt")); |
- EXPECT_EQ("chrome-extension", url.scheme()); |
- EXPECT_EQ("hhaomjibdihmijegdhdafkllkbggdgoj", url.host()); |
- EXPECT_EQ("/main.html", url.path()); |
- // Confirm that "%20" is used instead of "+" in the query. |
- EXPECT_TRUE(url.query().find("+") == std::string::npos); |
- EXPECT_TRUE(url.query().find("%20") != std::string::npos); |
- // The escaped query is hard to read. Pretty print the escaped JSON. |
- EXPECT_EQ("{\n" |
- " \"defaultExtension\": \"txt\",\n" |
- " \"defaultPath\": \"foo.txt\",\n" |
- " \"includeAllFiles\": false,\n" |
- " \"shouldReturnLocalPath\": false,\n" |
- " \"title\": \"some title\",\n" |
- " \"type\": \"open-file\",\n" |
- " \"typeList\": [ {\n" |
- " \"description\": \"HTML\",\n" |
- " \"extensions\": [ \"htm\", \"html\" ],\n" |
- " \"selected\": true\n" |
- " }, {\n" |
- " \"description\": \"TEXT\",\n" |
- " \"extensions\": [ \"txt\" ],\n" |
- " \"selected\": false\n" |
- " } ]\n" |
- "}\n", |
- PrettyPrintEscapedJson(url.query())); |
-} |
- |
-TEST(FileManagerUrlUtilTest, GetActionChoiceUrl_RegularMode) { |
- EXPECT_EQ("chrome-extension://hhaomjibdihmijegdhdafkllkbggdgoj/" |
- "action_choice.html#/foo.txt", |
- GetActionChoiceUrl(base::FilePath::FromUTF8Unsafe("foo.txt"), |
- false).spec()); |
-} |
- |
-TEST(FileManagerUrlUtilTest, GetActionChoiceUrl_AdvancedMode) { |
- EXPECT_EQ("chrome-extension://hhaomjibdihmijegdhdafkllkbggdgoj/" |
- "action_choice.html?advanced-mode#/foo.txt", |
- GetActionChoiceUrl(base::FilePath::FromUTF8Unsafe("foo.txt"), |
- true).spec()); |
-} |
- |
-} // namespace |
-} // namespace util |
-} // namespace file_manager |