Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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 "chrome/browser/ui/views/chooser_content_view.h" | 5 #include "chrome/browser/ui/views/chooser_content_view.h" |
| 6 | 6 |
| 7 #include <memory> | 7 #include <memory> |
| 8 | 8 |
| 9 #include "base/macros.h" | 9 #include "base/macros.h" |
| 10 #include "base/strings/utf_string_conversions.h" | 10 #include "base/strings/utf_string_conversions.h" |
| (...skipping 82 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 93 | 93 |
| 94 TEST_F(ChooserContentViewTest, AddOption) { | 94 TEST_F(ChooserContentViewTest, AddOption) { |
| 95 EXPECT_CALL(*mock_table_view_observer_, OnSelectionChanged()).Times(0); | 95 EXPECT_CALL(*mock_table_view_observer_, OnSelectionChanged()).Times(0); |
| 96 | 96 |
| 97 mock_chooser_controller_->OptionAdded( | 97 mock_chooser_controller_->OptionAdded( |
| 98 base::ASCIIToUTF16("a"), | 98 base::ASCIIToUTF16("a"), |
| 99 MockChooserController::kNoSignalStrengthLevelImage, | 99 MockChooserController::kNoSignalStrengthLevelImage, |
| 100 MockChooserController::ConnectedPairedStatus::CONNECTED | | 100 MockChooserController::ConnectedPairedStatus::CONNECTED | |
| 101 MockChooserController::ConnectedPairedStatus::PAIRED); | 101 MockChooserController::ConnectedPairedStatus::PAIRED); |
| 102 EXPECT_EQ(1, table_view_->RowCount()); | 102 EXPECT_EQ(1, table_view_->RowCount()); |
| 103 EXPECT_EQ(base::ASCIIToUTF16("a"), table_model_->GetText(0, 0)); | 103 EXPECT_EQ(l10n_util::GetStringFUTF16( |
|
msw
2016/09/09 23:16:03
nit: make a local helper like base::string16 GetPa
juncai
2016/09/15 17:43:55
Done.
| |
| 104 IDS_DEVICE_CHOOSER_DEVICE_NAME_AND_PAIRED_STATUS_TEXT, | |
| 105 base::ASCIIToUTF16("a")), | |
| 106 table_model_->GetText(0, 0)); | |
| 104 // |table_view_| should be enabled since there is an option. | 107 // |table_view_| should be enabled since there is an option. |
| 105 EXPECT_TRUE(table_view_->enabled()); | 108 EXPECT_TRUE(table_view_->enabled()); |
| 106 // No option selected. | 109 // No option selected. |
| 107 EXPECT_EQ(0, table_view_->SelectedRowCount()); | 110 EXPECT_EQ(0, table_view_->SelectedRowCount()); |
| 108 EXPECT_EQ(-1, table_view_->FirstSelectedRow()); | 111 EXPECT_EQ(-1, table_view_->FirstSelectedRow()); |
| 109 | 112 |
| 110 mock_chooser_controller_->OptionAdded( | 113 mock_chooser_controller_->OptionAdded( |
| 111 base::ASCIIToUTF16("b"), MockChooserController::kSignalStrengthLevel0Bar, | 114 base::ASCIIToUTF16("b"), MockChooserController::kSignalStrengthLevel0Bar, |
| 112 MockChooserController::ConnectedPairedStatus::NONE); | 115 MockChooserController::ConnectedPairedStatus::NONE); |
| 113 EXPECT_EQ(2, table_view_->RowCount()); | 116 EXPECT_EQ(2, table_view_->RowCount()); |
| (...skipping 23 matching lines...) Expand all Loading... | |
| 137 MockChooserController::ConnectedPairedStatus::PAIRED); | 140 MockChooserController::ConnectedPairedStatus::PAIRED); |
| 138 mock_chooser_controller_->OptionAdded( | 141 mock_chooser_controller_->OptionAdded( |
| 139 base::ASCIIToUTF16("b"), MockChooserController::kSignalStrengthLevel0Bar, | 142 base::ASCIIToUTF16("b"), MockChooserController::kSignalStrengthLevel0Bar, |
| 140 MockChooserController::ConnectedPairedStatus::NONE); | 143 MockChooserController::ConnectedPairedStatus::NONE); |
| 141 mock_chooser_controller_->OptionAdded( | 144 mock_chooser_controller_->OptionAdded( |
| 142 base::ASCIIToUTF16("c"), MockChooserController::kSignalStrengthLevel1Bar, | 145 base::ASCIIToUTF16("c"), MockChooserController::kSignalStrengthLevel1Bar, |
| 143 MockChooserController::ConnectedPairedStatus::NONE); | 146 MockChooserController::ConnectedPairedStatus::NONE); |
| 144 | 147 |
| 145 mock_chooser_controller_->OptionRemoved(base::ASCIIToUTF16("b")); | 148 mock_chooser_controller_->OptionRemoved(base::ASCIIToUTF16("b")); |
| 146 EXPECT_EQ(2, table_view_->RowCount()); | 149 EXPECT_EQ(2, table_view_->RowCount()); |
| 147 EXPECT_EQ(base::ASCIIToUTF16("a"), table_model_->GetText(0, 0)); | 150 EXPECT_EQ(l10n_util::GetStringFUTF16( |
| 151 IDS_DEVICE_CHOOSER_DEVICE_NAME_AND_PAIRED_STATUS_TEXT, | |
| 152 base::ASCIIToUTF16("a")), | |
| 153 table_model_->GetText(0, 0)); | |
| 148 EXPECT_EQ(base::ASCIIToUTF16("c"), table_model_->GetText(1, 0)); | 154 EXPECT_EQ(base::ASCIIToUTF16("c"), table_model_->GetText(1, 0)); |
| 149 EXPECT_TRUE(table_view_->enabled()); | 155 EXPECT_TRUE(table_view_->enabled()); |
| 150 EXPECT_EQ(0, table_view_->SelectedRowCount()); | 156 EXPECT_EQ(0, table_view_->SelectedRowCount()); |
| 151 EXPECT_EQ(-1, table_view_->FirstSelectedRow()); | 157 EXPECT_EQ(-1, table_view_->FirstSelectedRow()); |
| 152 | 158 |
| 153 // Remove a non-existent option, the number of rows should not change. | 159 // Remove a non-existent option, the number of rows should not change. |
| 154 mock_chooser_controller_->OptionRemoved(base::ASCIIToUTF16("non-existent")); | 160 mock_chooser_controller_->OptionRemoved(base::ASCIIToUTF16("non-existent")); |
| 155 EXPECT_EQ(2, table_view_->RowCount()); | 161 EXPECT_EQ(2, table_view_->RowCount()); |
| 156 EXPECT_EQ(base::ASCIIToUTF16("a"), table_model_->GetText(0, 0)); | 162 EXPECT_EQ(l10n_util::GetStringFUTF16( |
| 163 IDS_DEVICE_CHOOSER_DEVICE_NAME_AND_PAIRED_STATUS_TEXT, | |
| 164 base::ASCIIToUTF16("a")), | |
| 165 table_model_->GetText(0, 0)); | |
| 157 EXPECT_EQ(base::ASCIIToUTF16("c"), table_model_->GetText(1, 0)); | 166 EXPECT_EQ(base::ASCIIToUTF16("c"), table_model_->GetText(1, 0)); |
| 158 EXPECT_TRUE(table_view_->enabled()); | 167 EXPECT_TRUE(table_view_->enabled()); |
| 159 EXPECT_EQ(0, table_view_->SelectedRowCount()); | 168 EXPECT_EQ(0, table_view_->SelectedRowCount()); |
| 160 EXPECT_EQ(-1, table_view_->FirstSelectedRow()); | 169 EXPECT_EQ(-1, table_view_->FirstSelectedRow()); |
| 161 | 170 |
| 162 mock_chooser_controller_->OptionRemoved(base::ASCIIToUTF16("c")); | 171 mock_chooser_controller_->OptionRemoved(base::ASCIIToUTF16("c")); |
| 163 EXPECT_EQ(1, table_view_->RowCount()); | 172 EXPECT_EQ(1, table_view_->RowCount()); |
| 164 EXPECT_EQ(base::ASCIIToUTF16("a"), table_model_->GetText(0, 0)); | 173 EXPECT_EQ(l10n_util::GetStringFUTF16( |
| 174 IDS_DEVICE_CHOOSER_DEVICE_NAME_AND_PAIRED_STATUS_TEXT, | |
| 175 base::ASCIIToUTF16("a")), | |
| 176 table_model_->GetText(0, 0)); | |
| 165 EXPECT_TRUE(table_view_->enabled()); | 177 EXPECT_TRUE(table_view_->enabled()); |
| 166 EXPECT_EQ(0, table_view_->SelectedRowCount()); | 178 EXPECT_EQ(0, table_view_->SelectedRowCount()); |
| 167 EXPECT_EQ(-1, table_view_->FirstSelectedRow()); | 179 EXPECT_EQ(-1, table_view_->FirstSelectedRow()); |
| 168 | 180 |
| 169 mock_chooser_controller_->OptionRemoved(base::ASCIIToUTF16("a")); | 181 mock_chooser_controller_->OptionRemoved(base::ASCIIToUTF16("a")); |
| 170 // There is no option shown now. But since "No devices found." | 182 // There is no option shown now. But since "No devices found." |
| 171 // needs to be displayed on the |table_view_|, the number of rows is 1. | 183 // needs to be displayed on the |table_view_|, the number of rows is 1. |
| 172 EXPECT_EQ(1, table_view_->RowCount()); | 184 EXPECT_EQ(1, table_view_->RowCount()); |
| 173 EXPECT_EQ( | 185 EXPECT_EQ( |
| 174 l10n_util::GetStringUTF16(IDS_DEVICE_CHOOSER_NO_DEVICES_FOUND_PROMPT), | 186 l10n_util::GetStringUTF16(IDS_DEVICE_CHOOSER_NO_DEVICES_FOUND_PROMPT), |
| (...skipping 18 matching lines...) Expand all Loading... | |
| 193 mock_chooser_controller_->OptionAdded( | 205 mock_chooser_controller_->OptionAdded( |
| 194 base::ASCIIToUTF16("c"), MockChooserController::kSignalStrengthLevel1Bar, | 206 base::ASCIIToUTF16("c"), MockChooserController::kSignalStrengthLevel1Bar, |
| 195 MockChooserController::ConnectedPairedStatus::NONE); | 207 MockChooserController::ConnectedPairedStatus::NONE); |
| 196 | 208 |
| 197 mock_chooser_controller_->OptionUpdated( | 209 mock_chooser_controller_->OptionUpdated( |
| 198 base::ASCIIToUTF16("b"), base::ASCIIToUTF16("d"), | 210 base::ASCIIToUTF16("b"), base::ASCIIToUTF16("d"), |
| 199 MockChooserController::kNoSignalStrengthLevelImage, | 211 MockChooserController::kNoSignalStrengthLevelImage, |
| 200 MockChooserController::ConnectedPairedStatus::CONNECTED | | 212 MockChooserController::ConnectedPairedStatus::CONNECTED | |
| 201 MockChooserController::ConnectedPairedStatus::PAIRED); | 213 MockChooserController::ConnectedPairedStatus::PAIRED); |
| 202 EXPECT_EQ(3, table_view_->RowCount()); | 214 EXPECT_EQ(3, table_view_->RowCount()); |
| 203 EXPECT_EQ(base::ASCIIToUTF16("a"), table_model_->GetText(0, 0)); | 215 EXPECT_EQ(l10n_util::GetStringFUTF16( |
| 204 EXPECT_EQ(base::ASCIIToUTF16("d"), table_model_->GetText(1, 0)); | 216 IDS_DEVICE_CHOOSER_DEVICE_NAME_AND_PAIRED_STATUS_TEXT, |
| 217 base::ASCIIToUTF16("a")), | |
| 218 table_model_->GetText(0, 0)); | |
| 219 EXPECT_EQ(l10n_util::GetStringFUTF16( | |
| 220 IDS_DEVICE_CHOOSER_DEVICE_NAME_AND_PAIRED_STATUS_TEXT, | |
| 221 base::ASCIIToUTF16("d")), | |
| 222 table_model_->GetText(1, 0)); | |
| 205 EXPECT_EQ(base::ASCIIToUTF16("c"), table_model_->GetText(2, 0)); | 223 EXPECT_EQ(base::ASCIIToUTF16("c"), table_model_->GetText(2, 0)); |
| 206 EXPECT_TRUE(table_view_->enabled()); | 224 EXPECT_TRUE(table_view_->enabled()); |
| 207 EXPECT_EQ(0, table_view_->SelectedRowCount()); | 225 EXPECT_EQ(0, table_view_->SelectedRowCount()); |
| 208 EXPECT_EQ(-1, table_view_->FirstSelectedRow()); | 226 EXPECT_EQ(-1, table_view_->FirstSelectedRow()); |
| 209 } | 227 } |
| 210 | 228 |
| 211 TEST_F(ChooserContentViewTest, AddAndRemoveOption) { | 229 TEST_F(ChooserContentViewTest, AddAndRemoveOption) { |
| 212 // Called from TableView::OnItemsRemoved(). | 230 // Called from TableView::OnItemsRemoved(). |
| 213 EXPECT_CALL(*mock_table_view_observer_, OnSelectionChanged()).Times(3); | 231 EXPECT_CALL(*mock_table_view_observer_, OnSelectionChanged()).Times(3); |
| 214 | 232 |
| (...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 256 | 274 |
| 257 mock_chooser_controller_->OptionUpdated( | 275 mock_chooser_controller_->OptionUpdated( |
| 258 base::ASCIIToUTF16("b"), base::ASCIIToUTF16("d"), | 276 base::ASCIIToUTF16("b"), base::ASCIIToUTF16("d"), |
| 259 MockChooserController::kNoSignalStrengthLevelImage, | 277 MockChooserController::kNoSignalStrengthLevelImage, |
| 260 MockChooserController::ConnectedPairedStatus::CONNECTED | | 278 MockChooserController::ConnectedPairedStatus::CONNECTED | |
| 261 MockChooserController::ConnectedPairedStatus::PAIRED); | 279 MockChooserController::ConnectedPairedStatus::PAIRED); |
| 262 | 280 |
| 263 mock_chooser_controller_->OptionRemoved(base::ASCIIToUTF16("d")); | 281 mock_chooser_controller_->OptionRemoved(base::ASCIIToUTF16("d")); |
| 264 | 282 |
| 265 EXPECT_EQ(2, table_view_->RowCount()); | 283 EXPECT_EQ(2, table_view_->RowCount()); |
| 266 EXPECT_EQ(base::ASCIIToUTF16("a"), table_model_->GetText(0, 0)); | 284 EXPECT_EQ(l10n_util::GetStringFUTF16( |
| 285 IDS_DEVICE_CHOOSER_DEVICE_NAME_AND_PAIRED_STATUS_TEXT, | |
| 286 base::ASCIIToUTF16("a")), | |
| 287 table_model_->GetText(0, 0)); | |
| 267 EXPECT_EQ(base::ASCIIToUTF16("c"), table_model_->GetText(1, 0)); | 288 EXPECT_EQ(base::ASCIIToUTF16("c"), table_model_->GetText(1, 0)); |
| 268 EXPECT_TRUE(table_view_->enabled()); | 289 EXPECT_TRUE(table_view_->enabled()); |
| 269 EXPECT_EQ(0, table_view_->SelectedRowCount()); | 290 EXPECT_EQ(0, table_view_->SelectedRowCount()); |
| 270 EXPECT_EQ(-1, table_view_->FirstSelectedRow()); | 291 EXPECT_EQ(-1, table_view_->FirstSelectedRow()); |
| 271 } | 292 } |
| 272 | 293 |
| 273 TEST_F(ChooserContentViewTest, SelectAndDeselectAnOption) { | 294 TEST_F(ChooserContentViewTest, SelectAndDeselectAnOption) { |
| 274 EXPECT_CALL(*mock_table_view_observer_, OnSelectionChanged()).Times(4); | 295 EXPECT_CALL(*mock_table_view_observer_, OnSelectionChanged()).Times(4); |
| 275 | 296 |
| 276 mock_chooser_controller_->OptionAdded( | 297 mock_chooser_controller_->OptionAdded( |
| (...skipping 145 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 422 | 443 |
| 423 // Update option 1. | 444 // Update option 1. |
| 424 mock_chooser_controller_->OptionUpdated( | 445 mock_chooser_controller_->OptionUpdated( |
| 425 base::ASCIIToUTF16("b"), base::ASCIIToUTF16("d"), | 446 base::ASCIIToUTF16("b"), base::ASCIIToUTF16("d"), |
| 426 MockChooserController::kNoSignalStrengthLevelImage, | 447 MockChooserController::kNoSignalStrengthLevelImage, |
| 427 MockChooserController::ConnectedPairedStatus::CONNECTED | | 448 MockChooserController::ConnectedPairedStatus::CONNECTED | |
| 428 MockChooserController::ConnectedPairedStatus::PAIRED); | 449 MockChooserController::ConnectedPairedStatus::PAIRED); |
| 429 | 450 |
| 430 EXPECT_EQ(1, table_view_->SelectedRowCount()); | 451 EXPECT_EQ(1, table_view_->SelectedRowCount()); |
| 431 EXPECT_EQ(1, table_view_->FirstSelectedRow()); | 452 EXPECT_EQ(1, table_view_->FirstSelectedRow()); |
| 432 EXPECT_EQ(base::ASCIIToUTF16("a"), table_model_->GetText(0, 0)); | 453 EXPECT_EQ(l10n_util::GetStringFUTF16( |
| 433 EXPECT_EQ(base::ASCIIToUTF16("d"), table_model_->GetText(1, 0)); | 454 IDS_DEVICE_CHOOSER_DEVICE_NAME_AND_PAIRED_STATUS_TEXT, |
| 455 base::ASCIIToUTF16("a")), | |
| 456 table_model_->GetText(0, 0)); | |
| 457 EXPECT_EQ(l10n_util::GetStringFUTF16( | |
| 458 IDS_DEVICE_CHOOSER_DEVICE_NAME_AND_PAIRED_STATUS_TEXT, | |
| 459 base::ASCIIToUTF16("d")), | |
| 460 table_model_->GetText(1, 0)); | |
| 434 EXPECT_EQ(base::ASCIIToUTF16("c"), table_model_->GetText(2, 0)); | 461 EXPECT_EQ(base::ASCIIToUTF16("c"), table_model_->GetText(2, 0)); |
| 435 } | 462 } |
| 436 | 463 |
| 437 TEST_F(ChooserContentViewTest, | 464 TEST_F(ChooserContentViewTest, |
| 438 AddAnOptionAndSelectItAndRemoveTheSelectedOption) { | 465 AddAnOptionAndSelectItAndRemoveTheSelectedOption) { |
| 439 EXPECT_CALL(*mock_table_view_observer_, OnSelectionChanged()).Times(2); | 466 EXPECT_CALL(*mock_table_view_observer_, OnSelectionChanged()).Times(2); |
| 440 | 467 |
| 441 mock_chooser_controller_->OptionAdded( | 468 mock_chooser_controller_->OptionAdded( |
| 442 base::ASCIIToUTF16("a"), | 469 base::ASCIIToUTF16("a"), |
| 443 MockChooserController::kNoSignalStrengthLevelImage, | 470 MockChooserController::kNoSignalStrengthLevelImage, |
| (...skipping 193 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 637 | 664 |
| 638 TEST_F(ChooserContentViewTest, ClickRescanLink) { | 665 TEST_F(ChooserContentViewTest, ClickRescanLink) { |
| 639 EXPECT_CALL(*mock_chooser_controller_, RefreshOptions()).Times(1); | 666 EXPECT_CALL(*mock_chooser_controller_, RefreshOptions()).Times(1); |
| 640 chooser_content_view_->LinkClicked(nullptr, 0); | 667 chooser_content_view_->LinkClicked(nullptr, 0); |
| 641 } | 668 } |
| 642 | 669 |
| 643 TEST_F(ChooserContentViewTest, ClickStyledLabelLink) { | 670 TEST_F(ChooserContentViewTest, ClickStyledLabelLink) { |
| 644 EXPECT_CALL(*mock_chooser_controller_, OpenHelpCenterUrl()).Times(1); | 671 EXPECT_CALL(*mock_chooser_controller_, OpenHelpCenterUrl()).Times(1); |
| 645 styled_label_->LinkClicked(nullptr, 0); | 672 styled_label_->LinkClicked(nullptr, 0); |
| 646 } | 673 } |
| OLD | NEW |