OLD | NEW |
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 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 "base/base64.h" | 5 #include "base/base64.h" |
6 #include "base/base_paths.h" | 6 #include "base/base_paths.h" |
7 #include "base/command_line.h" | 7 #include "base/command_line.h" |
8 #include "base/file_util.h" | 8 #include "base/file_util.h" |
9 #include "base/files/file_path.h" | 9 #include "base/files/file_path.h" |
10 #include "base/files/scoped_temp_dir.h" | 10 #include "base/files/scoped_temp_dir.h" |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
42 | 42 |
43 base::ScopedTempDir extension_dir; | 43 base::ScopedTempDir extension_dir; |
44 ASSERT_TRUE(extension_dir.CreateUniqueTempDir()); | 44 ASSERT_TRUE(extension_dir.CreateUniqueTempDir()); |
45 | 45 |
46 CommandLine command(CommandLine::NO_PROGRAM); | 46 CommandLine command(CommandLine::NO_PROGRAM); |
47 Status status = internal::ProcessExtensions(extensions, extension_dir.path(), | 47 Status status = internal::ProcessExtensions(extensions, extension_dir.path(), |
48 false, &command); | 48 false, &command); |
49 ASSERT_TRUE(status.IsOk()); | 49 ASSERT_TRUE(status.IsOk()); |
50 ASSERT_TRUE(command.HasSwitch("load-extension")); | 50 ASSERT_TRUE(command.HasSwitch("load-extension")); |
51 base::FilePath temp_ext_path = command.GetSwitchValuePath("load-extension"); | 51 base::FilePath temp_ext_path = command.GetSwitchValuePath("load-extension"); |
52 ASSERT_TRUE(file_util::PathExists(temp_ext_path)); | 52 ASSERT_TRUE(base::PathExists(temp_ext_path)); |
53 } | 53 } |
54 | 54 |
55 TEST(ProcessExtensions, MultipleExtensions) { | 55 TEST(ProcessExtensions, MultipleExtensions) { |
56 base::FilePath source_root; | 56 base::FilePath source_root; |
57 PathService::Get(base::DIR_SOURCE_ROOT, &source_root); | 57 PathService::Get(base::DIR_SOURCE_ROOT, &source_root); |
58 base::FilePath test_ext_path = source_root.AppendASCII( | 58 base::FilePath test_ext_path = source_root.AppendASCII( |
59 "chrome/test/data/chromedriver"); | 59 "chrome/test/data/chromedriver"); |
60 base::FilePath test_crx_1 = test_ext_path.AppendASCII("ext_test_1.crx"); | 60 base::FilePath test_crx_1 = test_ext_path.AppendASCII("ext_test_1.crx"); |
61 base::FilePath test_crx_2 = test_ext_path.AppendASCII("ext_test_2.crx"); | 61 base::FilePath test_crx_2 = test_ext_path.AppendASCII("ext_test_2.crx"); |
62 | 62 |
(...skipping 14 matching lines...) Expand all Loading... |
77 CommandLine command(CommandLine::NO_PROGRAM); | 77 CommandLine command(CommandLine::NO_PROGRAM); |
78 Status status = internal::ProcessExtensions(extensions, extension_dir.path(), | 78 Status status = internal::ProcessExtensions(extensions, extension_dir.path(), |
79 false, &command); | 79 false, &command); |
80 ASSERT_TRUE(status.IsOk()); | 80 ASSERT_TRUE(status.IsOk()); |
81 ASSERT_TRUE(command.HasSwitch("load-extension")); | 81 ASSERT_TRUE(command.HasSwitch("load-extension")); |
82 CommandLine::StringType ext_paths = command.GetSwitchValueNative( | 82 CommandLine::StringType ext_paths = command.GetSwitchValueNative( |
83 "load-extension"); | 83 "load-extension"); |
84 std::vector<CommandLine::StringType> ext_path_list; | 84 std::vector<CommandLine::StringType> ext_path_list; |
85 base::SplitString(ext_paths, FILE_PATH_LITERAL(','), &ext_path_list); | 85 base::SplitString(ext_paths, FILE_PATH_LITERAL(','), &ext_path_list); |
86 ASSERT_EQ(2u, ext_path_list.size()); | 86 ASSERT_EQ(2u, ext_path_list.size()); |
87 ASSERT_TRUE(file_util::PathExists(base::FilePath(ext_path_list[0]))); | 87 ASSERT_TRUE(base::PathExists(base::FilePath(ext_path_list[0]))); |
88 ASSERT_TRUE(file_util::PathExists(base::FilePath(ext_path_list[1]))); | 88 ASSERT_TRUE(base::PathExists(base::FilePath(ext_path_list[1]))); |
89 } | 89 } |
90 | 90 |
91 namespace { | 91 namespace { |
92 | 92 |
93 void AssertEQ(const base::DictionaryValue& dict, const std::string& key, | 93 void AssertEQ(const base::DictionaryValue& dict, const std::string& key, |
94 const char* expected_value) { | 94 const char* expected_value) { |
95 std::string value; | 95 std::string value; |
96 ASSERT_TRUE(dict.GetString(key, &value)); | 96 ASSERT_TRUE(dict.GetString(key, &value)); |
97 ASSERT_STREQ(value.c_str(), expected_value); | 97 ASSERT_STREQ(value.c_str(), expected_value); |
98 } | 98 } |
(...skipping 28 matching lines...) Expand all Loading... |
127 base::FilePath local_state_file = temp_dir.path().AppendASCII("Local State"); | 127 base::FilePath local_state_file = temp_dir.path().AppendASCII("Local State"); |
128 std::string local_state_str; | 128 std::string local_state_str; |
129 ASSERT_TRUE(file_util::ReadFileToString(local_state_file, &local_state_str)); | 129 ASSERT_TRUE(file_util::ReadFileToString(local_state_file, &local_state_str)); |
130 scoped_ptr<base::Value> local_state_value( | 130 scoped_ptr<base::Value> local_state_value( |
131 base::JSONReader::Read(local_state_str)); | 131 base::JSONReader::Read(local_state_str)); |
132 const base::DictionaryValue* local_state_dict = NULL; | 132 const base::DictionaryValue* local_state_dict = NULL; |
133 ASSERT_TRUE(local_state_value->GetAsDictionary(&local_state_dict)); | 133 ASSERT_TRUE(local_state_value->GetAsDictionary(&local_state_dict)); |
134 AssertEQ(*local_state_dict, "myLocalKey", "ok"); | 134 AssertEQ(*local_state_dict, "myLocalKey", "ok"); |
135 AssertEQ(*local_state_dict, "local.state.sub", "2"); | 135 AssertEQ(*local_state_dict, "local.state.sub", "2"); |
136 } | 136 } |
OLD | NEW |