OLD | NEW |
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 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 #import "chrome/browser/ui/cocoa/table_model_array_controller.h" | 5 #import "chrome/browser/ui/cocoa/table_model_array_controller.h" |
6 | 6 |
7 #include "base/auto_reset.h" | 7 #include "base/auto_reset.h" |
8 #include "base/command_line.h" | 8 #include "base/command_line.h" |
9 #include "base/utf_string_conversions.h" | 9 #include "base/utf_string_conversions.h" |
10 #include "chrome/browser/mock_plugin_exceptions_table_model.h" | 10 #include "chrome/browser/mock_plugin_exceptions_table_model.h" |
11 #include "chrome/browser/ui/cocoa/browser_test_helper.h" | 11 #include "chrome/browser/ui/cocoa/browser_test_helper.h" |
12 #import "chrome/browser/ui/cocoa/cocoa_test_helper.h" | 12 #import "chrome/browser/ui/cocoa/cocoa_test_helper.h" |
13 #include "chrome/common/chrome_switches.h" | 13 #include "chrome/common/chrome_switches.h" |
14 #include "chrome/test/testing_profile.h" | 14 #include "chrome/test/testing_profile.h" |
15 #include "grit/generated_resources.h" | 15 #include "grit/generated_resources.h" |
16 #include "testing/gtest/include/gtest/gtest.h" | 16 #include "testing/gtest/include/gtest/gtest.h" |
17 #include "testing/gtest_mac.h" | 17 #include "testing/gtest_mac.h" |
18 #include "webkit/glue/plugins/plugin_list.h" | 18 #include "webkit/glue/plugins/plugin_list.h" |
19 #include "webkit/glue/plugins/webplugininfo.h" | 19 #include "webkit/glue/plugins/webplugininfo.h" |
20 | 20 |
21 namespace { | |
22 | |
23 class TableModelArrayControllerTest : public CocoaTest { | 21 class TableModelArrayControllerTest : public CocoaTest { |
24 public: | 22 public: |
25 TableModelArrayControllerTest() | 23 TableModelArrayControllerTest() |
26 : command_line_(CommandLine::ForCurrentProcess(), | 24 : command_line_(CommandLine::ForCurrentProcess(), |
27 *CommandLine::ForCurrentProcess()) {} | 25 *CommandLine::ForCurrentProcess()) {} |
28 | 26 |
29 virtual void SetUp() { | 27 virtual void SetUp() { |
30 CocoaTest::SetUp(); | 28 CocoaTest::SetUp(); |
31 | 29 |
32 CommandLine::ForCurrentProcess()->AppendSwitch( | 30 CommandLine::ForCurrentProcess()->AppendSwitch( |
(...skipping 12 matching lines...) Expand all Loading... |
45 CONTENT_SETTINGS_TYPE_PLUGINS, | 43 CONTENT_SETTINGS_TYPE_PLUGINS, |
46 "b-bar", | 44 "b-bar", |
47 CONTENT_SETTING_BLOCK); | 45 CONTENT_SETTING_BLOCK); |
48 map->SetContentSetting(example_com, | 46 map->SetContentSetting(example_com, |
49 CONTENT_SETTINGS_TYPE_PLUGINS, | 47 CONTENT_SETTINGS_TYPE_PLUGINS, |
50 "b-bar", | 48 "b-bar", |
51 CONTENT_SETTING_ALLOW); | 49 CONTENT_SETTING_ALLOW); |
52 | 50 |
53 model_.reset(new MockPluginExceptionsTableModel(map, NULL)); | 51 model_.reset(new MockPluginExceptionsTableModel(map, NULL)); |
54 | 52 |
55 NPAPI::PluginList::PluginMap plugins; | 53 std::vector<PluginGroup> plugins; |
56 WebPluginInfo foo_plugin; | 54 WebPluginInfo foo_plugin; |
57 foo_plugin.path = FilePath(FILE_PATH_LITERAL("a-foo")); | 55 foo_plugin.path = FilePath(FILE_PATH_LITERAL("a-foo")); |
58 foo_plugin.name = ASCIIToUTF16("FooPlugin"); | 56 foo_plugin.name = ASCIIToUTF16("FooPlugin"); |
59 foo_plugin.enabled = true; | 57 foo_plugin.enabled = true; |
60 PluginGroup* foo_group = PluginGroup::FromWebPluginInfo(foo_plugin); | 58 scoped_ptr<PluginGroup> foo_group( |
61 plugins[foo_group->identifier()] = linked_ptr<PluginGroup>(foo_group); | 59 PluginGroup::FromWebPluginInfo(foo_plugin)); |
| 60 plugins.push_back(*foo_group); |
62 WebPluginInfo bar_plugin; | 61 WebPluginInfo bar_plugin; |
63 bar_plugin.path = FilePath(FILE_PATH_LITERAL("b-bar")); | 62 bar_plugin.path = FilePath(FILE_PATH_LITERAL("b-bar")); |
64 bar_plugin.name = ASCIIToUTF16("BarPlugin"); | 63 bar_plugin.name = ASCIIToUTF16("BarPlugin"); |
65 bar_plugin.enabled = true; | 64 bar_plugin.enabled = true; |
66 PluginGroup* bar_group = PluginGroup::FromWebPluginInfo(bar_plugin); | 65 scoped_ptr<PluginGroup> bar_group( |
67 plugins[bar_group->identifier()] = linked_ptr<PluginGroup>(bar_group); | 66 PluginGroup::FromWebPluginInfo(bar_plugin)); |
| 67 plugins.push_back(*bar_group); |
68 WebPluginInfo blurp_plugin; | 68 WebPluginInfo blurp_plugin; |
69 blurp_plugin.path = FilePath(FILE_PATH_LITERAL("c-blurp")); | 69 blurp_plugin.path = FilePath(FILE_PATH_LITERAL("c-blurp")); |
70 blurp_plugin.name = ASCIIToUTF16("BlurpPlugin"); | 70 blurp_plugin.name = ASCIIToUTF16("BlurpPlugin"); |
71 blurp_plugin.enabled = true; | 71 blurp_plugin.enabled = true; |
72 PluginGroup* blurp_group = PluginGroup::FromWebPluginInfo(blurp_plugin); | 72 scoped_ptr<PluginGroup> blurp_group( |
73 plugins[blurp_group->identifier()] = linked_ptr<PluginGroup>(blurp_group); | 73 PluginGroup::FromWebPluginInfo(blurp_plugin)); |
| 74 plugins.push_back(*blurp_group); |
74 | 75 |
75 model_->set_plugins(plugins); | 76 model_->set_plugins(plugins); |
76 model_->LoadSettings(); | 77 model_->LoadSettings(); |
77 | 78 |
78 id content = [NSMutableArray array]; | 79 id content = [NSMutableArray array]; |
79 controller_.reset( | 80 controller_.reset( |
80 [[TableModelArrayController alloc] initWithContent:content]); | 81 [[TableModelArrayController alloc] initWithContent:content]); |
81 NSDictionary* columns = [NSDictionary dictionaryWithObjectsAndKeys: | 82 NSDictionary* columns = [NSDictionary dictionaryWithObjectsAndKeys: |
82 [NSNumber numberWithInt:IDS_EXCEPTIONS_HOSTNAME_HEADER], @"title", | 83 [NSNumber numberWithInt:IDS_EXCEPTIONS_HOSTNAME_HEADER], @"title", |
83 [NSNumber numberWithInt:IDS_EXCEPTIONS_ACTION_HEADER], @"action", | 84 [NSNumber numberWithInt:IDS_EXCEPTIONS_ACTION_HEADER], @"action", |
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
161 [controller setSelectionIndexes:indexes]; | 162 [controller setSelectionIndexes:indexes]; |
162 [controller remove:nil]; | 163 [controller remove:nil]; |
163 titles = [[controller arrangedObjects] valueForKey:@"title"]; | 164 titles = [[controller arrangedObjects] valueForKey:@"title"]; |
164 EXPECT_NSEQ(@"(\n" | 165 EXPECT_NSEQ(@"(\n" |
165 @" BarPlugin,\n" | 166 @" BarPlugin,\n" |
166 @" \"[*.]example.com\",\n" | 167 @" \"[*.]example.com\",\n" |
167 @" \"[*.]moose.org\"\n" | 168 @" \"[*.]moose.org\"\n" |
168 @")", | 169 @")", |
169 [titles description]); | 170 [titles description]); |
170 } | 171 } |
171 | |
172 } // namespace | |
OLD | NEW |