Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1016)

Unified Diff: chrome/browser/ui/views/chooser_content_view_unittest.cc

Issue 2595083002: Change ChooserContentView[Cocoa] class name to be DeviceChooserContentView[Cocoa] (Closed)
Patch Set: merge master Created 3 years, 12 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/ui/views/chooser_content_view_unittest.cc
diff --git a/chrome/browser/ui/views/chooser_content_view_unittest.cc b/chrome/browser/ui/views/chooser_content_view_unittest.cc
deleted file mode 100644
index dbfd15395ffff64d14af3d36d2f8a3814cf10c74..0000000000000000000000000000000000000000
--- a/chrome/browser/ui/views/chooser_content_view_unittest.cc
+++ /dev/null
@@ -1,641 +0,0 @@
-// Copyright 2016 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/ui/views/chooser_content_view.h"
-
-#include <memory>
-
-#include "base/macros.h"
-#include "base/memory/ptr_util.h"
-#include "base/strings/utf_string_conversions.h"
-#include "chrome/browser/chooser_controller/mock_chooser_controller.h"
-#include "chrome/grit/generated_resources.h"
-#include "testing/gmock/include/gmock/gmock.h"
-#include "testing/gtest/include/gtest/gtest.h"
-#include "ui/base/l10n/l10n_util.h"
-#include "ui/base/models/list_selection_model.h"
-#include "ui/views/controls/link.h"
-#include "ui/views/controls/styled_label.h"
-#include "ui/views/controls/table/table_view.h"
-#include "ui/views/controls/table/table_view_observer.h"
-#include "ui/views/controls/throbber.h"
-#include "ui/views/test/views_test_base.h"
-
-namespace {
-
-class MockTableViewObserver : public views::TableViewObserver {
- public:
- // views::TableViewObserver:
- MOCK_METHOD0(OnSelectionChanged, void());
-};
-
-base::string16 GetPairedText(const std::string& device_name) {
- return l10n_util::GetStringFUTF16(
- IDS_DEVICE_CHOOSER_DEVICE_NAME_AND_PAIRED_STATUS_TEXT,
- base::ASCIIToUTF16(device_name));
-}
-
-} // namespace
-
-class ChooserContentViewTest : public views::ViewsTestBase {
- public:
- ChooserContentViewTest() {}
-
- // views::ViewsTestBase:
- void SetUp() override {
- views::ViewsTestBase::SetUp();
- std::unique_ptr<MockChooserController> mock_chooser_controller(
- new MockChooserController(nullptr));
- mock_chooser_controller_ = mock_chooser_controller.get();
- mock_table_view_observer_ = base::MakeUnique<MockTableViewObserver>();
- chooser_content_view_ = base::MakeUnique<ChooserContentView>(
- mock_table_view_observer_.get(), std::move(mock_chooser_controller));
- table_view_ = chooser_content_view_->table_view_;
- ASSERT_TRUE(table_view_);
- table_model_ = table_view_->model();
- ASSERT_TRUE(table_model_);
- throbber_ = chooser_content_view_->throbber_;
- ASSERT_TRUE(throbber_);
- turn_adapter_off_help_ = chooser_content_view_->turn_adapter_off_help_;
- ASSERT_TRUE(turn_adapter_off_help_);
- footnote_link_ = chooser_content_view_->footnote_link();
- ASSERT_TRUE(footnote_link_);
- }
-
- protected:
- std::unique_ptr<MockTableViewObserver> mock_table_view_observer_;
- std::unique_ptr<ChooserContentView> chooser_content_view_;
- MockChooserController* mock_chooser_controller_ = nullptr;
- views::TableView* table_view_ = nullptr;
- ui::TableModel* table_model_ = nullptr;
- views::Throbber* throbber_ = nullptr;
- views::StyledLabel* turn_adapter_off_help_ = nullptr;
- views::StyledLabel* footnote_link_ = nullptr;
-
- private:
- DISALLOW_COPY_AND_ASSIGN(ChooserContentViewTest);
-};
-
-TEST_F(ChooserContentViewTest, InitialState) {
- EXPECT_CALL(*mock_table_view_observer_, OnSelectionChanged()).Times(0);
-
- EXPECT_TRUE(table_view_->visible());
- // Since "No devices found." needs to be displayed on the |table_view_|,
- // the number of rows is 1.
- EXPECT_EQ(1, table_view_->RowCount());
- EXPECT_EQ(
- l10n_util::GetStringUTF16(IDS_DEVICE_CHOOSER_NO_DEVICES_FOUND_PROMPT),
- table_model_->GetText(0, 0));
- // |table_view_| should be disabled since there is no option shown.
- EXPECT_FALSE(table_view_->enabled());
- // No option selected.
- EXPECT_EQ(0UL, table_view_->selection_model().size());
- EXPECT_EQ(-1, table_view_->FirstSelectedRow());
- EXPECT_FALSE(throbber_->visible());
- EXPECT_FALSE(turn_adapter_off_help_->visible());
- EXPECT_EQ(chooser_content_view_->help_text_, footnote_link_->text());
-}
-
-TEST_F(ChooserContentViewTest, AddOption) {
- EXPECT_CALL(*mock_table_view_observer_, OnSelectionChanged()).Times(0);
-
- mock_chooser_controller_->OptionAdded(
- base::ASCIIToUTF16("a"),
- MockChooserController::kNoSignalStrengthLevelImage,
- MockChooserController::ConnectedPairedStatus::CONNECTED |
- MockChooserController::ConnectedPairedStatus::PAIRED);
- EXPECT_EQ(1, table_view_->RowCount());
- EXPECT_EQ(GetPairedText("a"), table_model_->GetText(0, 0));
- // |table_view_| should be enabled since there is an option.
- EXPECT_TRUE(table_view_->enabled());
- // No option selected.
- EXPECT_EQ(0UL, table_view_->selection_model().size());
- EXPECT_EQ(-1, table_view_->FirstSelectedRow());
-
- mock_chooser_controller_->OptionAdded(
- base::ASCIIToUTF16("b"), MockChooserController::kSignalStrengthLevel0Bar,
- MockChooserController::ConnectedPairedStatus::NONE);
- EXPECT_EQ(2, table_view_->RowCount());
- EXPECT_EQ(base::ASCIIToUTF16("b"), table_model_->GetText(1, 0));
- EXPECT_TRUE(table_view_->enabled());
- EXPECT_EQ(0UL, table_view_->selection_model().size());
- EXPECT_EQ(-1, table_view_->FirstSelectedRow());
-
- mock_chooser_controller_->OptionAdded(
- base::ASCIIToUTF16("c"), MockChooserController::kSignalStrengthLevel1Bar,
- MockChooserController::ConnectedPairedStatus::NONE);
- EXPECT_EQ(3, table_view_->RowCount());
- EXPECT_EQ(base::ASCIIToUTF16("c"), table_model_->GetText(2, 0));
- EXPECT_TRUE(table_view_->enabled());
- EXPECT_EQ(0UL, table_view_->selection_model().size());
- EXPECT_EQ(-1, table_view_->FirstSelectedRow());
-}
-
-TEST_F(ChooserContentViewTest, RemoveOption) {
- // Called from TableView::OnItemsRemoved().
- EXPECT_CALL(*mock_table_view_observer_, OnSelectionChanged()).Times(3);
-
- mock_chooser_controller_->OptionAdded(
- base::ASCIIToUTF16("a"),
- MockChooserController::kNoSignalStrengthLevelImage,
- MockChooserController::ConnectedPairedStatus::CONNECTED |
- MockChooserController::ConnectedPairedStatus::PAIRED);
- mock_chooser_controller_->OptionAdded(
- base::ASCIIToUTF16("b"), MockChooserController::kSignalStrengthLevel0Bar,
- MockChooserController::ConnectedPairedStatus::NONE);
- mock_chooser_controller_->OptionAdded(
- base::ASCIIToUTF16("c"), MockChooserController::kSignalStrengthLevel1Bar,
- MockChooserController::ConnectedPairedStatus::NONE);
-
- mock_chooser_controller_->OptionRemoved(base::ASCIIToUTF16("b"));
- EXPECT_EQ(2, table_view_->RowCount());
- EXPECT_EQ(GetPairedText("a"), table_model_->GetText(0, 0));
- EXPECT_EQ(base::ASCIIToUTF16("c"), table_model_->GetText(1, 0));
- EXPECT_TRUE(table_view_->enabled());
- EXPECT_EQ(0UL, table_view_->selection_model().size());
- EXPECT_EQ(-1, table_view_->FirstSelectedRow());
-
- // Remove a non-existent option, the number of rows should not change.
- mock_chooser_controller_->OptionRemoved(base::ASCIIToUTF16("non-existent"));
- EXPECT_EQ(2, table_view_->RowCount());
- EXPECT_EQ(GetPairedText("a"), table_model_->GetText(0, 0));
- EXPECT_EQ(base::ASCIIToUTF16("c"), table_model_->GetText(1, 0));
- EXPECT_TRUE(table_view_->enabled());
- EXPECT_EQ(0UL, table_view_->selection_model().size());
- EXPECT_EQ(-1, table_view_->FirstSelectedRow());
-
- mock_chooser_controller_->OptionRemoved(base::ASCIIToUTF16("c"));
- EXPECT_EQ(1, table_view_->RowCount());
- EXPECT_EQ(GetPairedText("a"), table_model_->GetText(0, 0));
- EXPECT_TRUE(table_view_->enabled());
- EXPECT_EQ(0UL, table_view_->selection_model().size());
- EXPECT_EQ(-1, table_view_->FirstSelectedRow());
-
- mock_chooser_controller_->OptionRemoved(base::ASCIIToUTF16("a"));
- // There is no option shown now. But since "No devices found."
- // needs to be displayed on the |table_view_|, the number of rows is 1.
- EXPECT_EQ(1, table_view_->RowCount());
- EXPECT_EQ(
- l10n_util::GetStringUTF16(IDS_DEVICE_CHOOSER_NO_DEVICES_FOUND_PROMPT),
- table_model_->GetText(0, 0));
- // |table_view_| should be disabled since all options are removed.
- EXPECT_FALSE(table_view_->enabled());
- EXPECT_EQ(0UL, table_view_->selection_model().size());
- EXPECT_EQ(-1, table_view_->FirstSelectedRow());
-}
-
-TEST_F(ChooserContentViewTest, UpdateOption) {
- EXPECT_CALL(*mock_table_view_observer_, OnSelectionChanged()).Times(0);
-
- mock_chooser_controller_->OptionAdded(
- base::ASCIIToUTF16("a"),
- MockChooserController::kNoSignalStrengthLevelImage,
- MockChooserController::ConnectedPairedStatus::CONNECTED |
- MockChooserController::ConnectedPairedStatus::PAIRED);
- mock_chooser_controller_->OptionAdded(
- base::ASCIIToUTF16("b"), MockChooserController::kSignalStrengthLevel0Bar,
- MockChooserController::ConnectedPairedStatus::NONE);
- mock_chooser_controller_->OptionAdded(
- base::ASCIIToUTF16("c"), MockChooserController::kSignalStrengthLevel1Bar,
- MockChooserController::ConnectedPairedStatus::NONE);
-
- mock_chooser_controller_->OptionUpdated(
- base::ASCIIToUTF16("b"), base::ASCIIToUTF16("d"),
- MockChooserController::kNoSignalStrengthLevelImage,
- MockChooserController::ConnectedPairedStatus::CONNECTED |
- MockChooserController::ConnectedPairedStatus::PAIRED);
- EXPECT_EQ(3, table_view_->RowCount());
- EXPECT_EQ(GetPairedText("a"), table_model_->GetText(0, 0));
- EXPECT_EQ(GetPairedText("d"), table_model_->GetText(1, 0));
- EXPECT_EQ(base::ASCIIToUTF16("c"), table_model_->GetText(2, 0));
- EXPECT_TRUE(table_view_->enabled());
- EXPECT_EQ(0UL, table_view_->selection_model().size());
- EXPECT_EQ(-1, table_view_->FirstSelectedRow());
-}
-
-TEST_F(ChooserContentViewTest, AddAndRemoveOption) {
- // Called from TableView::OnItemsRemoved().
- EXPECT_CALL(*mock_table_view_observer_, OnSelectionChanged()).Times(3);
-
- mock_chooser_controller_->OptionAdded(
- base::ASCIIToUTF16("a"),
- MockChooserController::kNoSignalStrengthLevelImage,
- MockChooserController::ConnectedPairedStatus::CONNECTED |
- MockChooserController::ConnectedPairedStatus::PAIRED);
- EXPECT_EQ(1, table_view_->RowCount());
- mock_chooser_controller_->OptionAdded(
- base::ASCIIToUTF16("b"), MockChooserController::kSignalStrengthLevel0Bar,
- MockChooserController::ConnectedPairedStatus::NONE);
- EXPECT_EQ(2, table_view_->RowCount());
- mock_chooser_controller_->OptionRemoved(base::ASCIIToUTF16("b"));
- EXPECT_EQ(1, table_view_->RowCount());
- mock_chooser_controller_->OptionAdded(
- base::ASCIIToUTF16("c"), MockChooserController::kSignalStrengthLevel1Bar,
- MockChooserController::ConnectedPairedStatus::NONE);
- EXPECT_EQ(2, table_view_->RowCount());
- mock_chooser_controller_->OptionAdded(
- base::ASCIIToUTF16("d"), MockChooserController::kSignalStrengthLevel2Bar,
- MockChooserController::ConnectedPairedStatus::NONE);
- EXPECT_EQ(3, table_view_->RowCount());
- mock_chooser_controller_->OptionRemoved(base::ASCIIToUTF16("d"));
- EXPECT_EQ(2, table_view_->RowCount());
- mock_chooser_controller_->OptionRemoved(base::ASCIIToUTF16("c"));
- EXPECT_EQ(1, table_view_->RowCount());
-}
-
-TEST_F(ChooserContentViewTest, UpdateAndRemoveTheUpdatedOption) {
- // Called from TableView::OnItemsRemoved().
- EXPECT_CALL(*mock_table_view_observer_, OnSelectionChanged()).Times(1);
-
- mock_chooser_controller_->OptionAdded(
- base::ASCIIToUTF16("a"),
- MockChooserController::kNoSignalStrengthLevelImage,
- MockChooserController::ConnectedPairedStatus::CONNECTED |
- MockChooserController::ConnectedPairedStatus::PAIRED);
- mock_chooser_controller_->OptionAdded(
- base::ASCIIToUTF16("b"), MockChooserController::kSignalStrengthLevel0Bar,
- MockChooserController::ConnectedPairedStatus::NONE);
- mock_chooser_controller_->OptionAdded(
- base::ASCIIToUTF16("c"), MockChooserController::kSignalStrengthLevel1Bar,
- MockChooserController::ConnectedPairedStatus::NONE);
-
- mock_chooser_controller_->OptionUpdated(
- base::ASCIIToUTF16("b"), base::ASCIIToUTF16("d"),
- MockChooserController::kNoSignalStrengthLevelImage,
- MockChooserController::ConnectedPairedStatus::CONNECTED |
- MockChooserController::ConnectedPairedStatus::PAIRED);
-
- mock_chooser_controller_->OptionRemoved(base::ASCIIToUTF16("d"));
-
- EXPECT_EQ(2, table_view_->RowCount());
- EXPECT_EQ(GetPairedText("a"), table_model_->GetText(0, 0));
- EXPECT_EQ(base::ASCIIToUTF16("c"), table_model_->GetText(1, 0));
- EXPECT_TRUE(table_view_->enabled());
- EXPECT_EQ(0UL, table_view_->selection_model().size());
- EXPECT_EQ(-1, table_view_->FirstSelectedRow());
-}
-
-TEST_F(ChooserContentViewTest, SelectAndDeselectAnOption) {
- EXPECT_CALL(*mock_table_view_observer_, OnSelectionChanged()).Times(4);
-
- mock_chooser_controller_->OptionAdded(
- base::ASCIIToUTF16("a"),
- MockChooserController::kNoSignalStrengthLevelImage,
- MockChooserController::ConnectedPairedStatus::CONNECTED |
- MockChooserController::ConnectedPairedStatus::PAIRED);
- mock_chooser_controller_->OptionAdded(
- base::ASCIIToUTF16("b"), MockChooserController::kSignalStrengthLevel0Bar,
- MockChooserController::ConnectedPairedStatus::NONE);
- mock_chooser_controller_->OptionAdded(
- base::ASCIIToUTF16("c"), MockChooserController::kSignalStrengthLevel1Bar,
- MockChooserController::ConnectedPairedStatus::NONE);
-
- // Select option 0.
- table_view_->Select(0);
- EXPECT_EQ(1UL, table_view_->selection_model().size());
- EXPECT_EQ(0, table_view_->FirstSelectedRow());
-
- // Unselect option 0.
- table_view_->Select(-1);
- EXPECT_EQ(0UL, table_view_->selection_model().size());
- EXPECT_EQ(-1, table_view_->FirstSelectedRow());
-
- // Select option 1.
- table_view_->Select(1);
- EXPECT_EQ(1UL, table_view_->selection_model().size());
- EXPECT_EQ(1, table_view_->FirstSelectedRow());
-
- // Unselect option 1.
- table_view_->Select(-1);
- EXPECT_EQ(0UL, table_view_->selection_model().size());
- EXPECT_EQ(-1, table_view_->FirstSelectedRow());
-}
-
-TEST_F(ChooserContentViewTest, SelectAnOptionAndThenSelectAnotherOption) {
- EXPECT_CALL(*mock_table_view_observer_, OnSelectionChanged()).Times(3);
-
- mock_chooser_controller_->OptionAdded(
- base::ASCIIToUTF16("a"),
- MockChooserController::kNoSignalStrengthLevelImage,
- MockChooserController::ConnectedPairedStatus::CONNECTED |
- MockChooserController::ConnectedPairedStatus::PAIRED);
- mock_chooser_controller_->OptionAdded(
- base::ASCIIToUTF16("b"), MockChooserController::kSignalStrengthLevel0Bar,
- MockChooserController::ConnectedPairedStatus::NONE);
- mock_chooser_controller_->OptionAdded(
- base::ASCIIToUTF16("c"), MockChooserController::kSignalStrengthLevel1Bar,
- MockChooserController::ConnectedPairedStatus::NONE);
-
- // Select option 0.
- table_view_->Select(0);
- EXPECT_EQ(1UL, table_view_->selection_model().size());
- EXPECT_EQ(0, table_view_->FirstSelectedRow());
-
- // Select option 1.
- table_view_->Select(1);
- EXPECT_EQ(1UL, table_view_->selection_model().size());
- EXPECT_EQ(1, table_view_->FirstSelectedRow());
-
- // Select option 2.
- table_view_->Select(2);
- EXPECT_EQ(1UL, table_view_->selection_model().size());
- EXPECT_EQ(2, table_view_->FirstSelectedRow());
-}
-
-TEST_F(ChooserContentViewTest, SelectAnOptionAndRemoveAnotherOption) {
- // Called one time from TableView::Select() and two times from
- // TableView::OnItemsRemoved().
- EXPECT_CALL(*mock_table_view_observer_, OnSelectionChanged()).Times(3);
-
- mock_chooser_controller_->OptionAdded(
- base::ASCIIToUTF16("a"),
- MockChooserController::kNoSignalStrengthLevelImage,
- MockChooserController::ConnectedPairedStatus::CONNECTED |
- MockChooserController::ConnectedPairedStatus::PAIRED);
- mock_chooser_controller_->OptionAdded(
- base::ASCIIToUTF16("b"), MockChooserController::kSignalStrengthLevel0Bar,
- MockChooserController::ConnectedPairedStatus::NONE);
- mock_chooser_controller_->OptionAdded(
- base::ASCIIToUTF16("c"), MockChooserController::kSignalStrengthLevel1Bar,
- MockChooserController::ConnectedPairedStatus::NONE);
-
- // Select option 1.
- table_view_->Select(1);
- EXPECT_EQ(1UL, table_view_->selection_model().size());
- EXPECT_EQ(1, table_view_->FirstSelectedRow());
-
- // Remove option 0, the list becomes: b c.
- mock_chooser_controller_->OptionRemoved(base::ASCIIToUTF16("a"));
- EXPECT_EQ(2, table_view_->RowCount());
- EXPECT_EQ(1UL, table_view_->selection_model().size());
- // Since option 0 is removed, the original selected option 1 becomes
- // the first option in the list.
- EXPECT_EQ(0, table_view_->FirstSelectedRow());
-
- // Remove option 1.
- mock_chooser_controller_->OptionRemoved(base::ASCIIToUTF16("c"));
- EXPECT_EQ(1, table_view_->RowCount());
- EXPECT_EQ(1UL, table_view_->selection_model().size());
- EXPECT_EQ(0, table_view_->FirstSelectedRow());
-}
-
-TEST_F(ChooserContentViewTest, SelectAnOptionAndRemoveTheSelectedOption) {
- EXPECT_CALL(*mock_table_view_observer_, OnSelectionChanged()).Times(2);
-
- mock_chooser_controller_->OptionAdded(
- base::ASCIIToUTF16("a"),
- MockChooserController::kNoSignalStrengthLevelImage,
- MockChooserController::ConnectedPairedStatus::CONNECTED |
- MockChooserController::ConnectedPairedStatus::PAIRED);
- mock_chooser_controller_->OptionAdded(
- base::ASCIIToUTF16("b"), MockChooserController::kSignalStrengthLevel0Bar,
- MockChooserController::ConnectedPairedStatus::NONE);
- mock_chooser_controller_->OptionAdded(
- base::ASCIIToUTF16("c"), MockChooserController::kSignalStrengthLevel1Bar,
- MockChooserController::ConnectedPairedStatus::NONE);
-
- // Select option 1.
- table_view_->Select(1);
- EXPECT_EQ(1UL, table_view_->selection_model().size());
- EXPECT_EQ(1, table_view_->FirstSelectedRow());
-
- // Remove option 1.
- mock_chooser_controller_->OptionRemoved(base::ASCIIToUTF16("b"));
- EXPECT_EQ(2, table_view_->RowCount());
- // No option selected.
- EXPECT_EQ(0UL, table_view_->selection_model().size());
- EXPECT_EQ(-1, table_view_->FirstSelectedRow());
-}
-
-TEST_F(ChooserContentViewTest, SelectAnOptionAndUpdateTheSelectedOption) {
- EXPECT_CALL(*mock_table_view_observer_, OnSelectionChanged()).Times(1);
-
- mock_chooser_controller_->OptionAdded(
- base::ASCIIToUTF16("a"),
- MockChooserController::kNoSignalStrengthLevelImage,
- MockChooserController::ConnectedPairedStatus::CONNECTED |
- MockChooserController::ConnectedPairedStatus::PAIRED);
- mock_chooser_controller_->OptionAdded(
- base::ASCIIToUTF16("b"), MockChooserController::kSignalStrengthLevel0Bar,
- MockChooserController::ConnectedPairedStatus::NONE);
- mock_chooser_controller_->OptionAdded(
- base::ASCIIToUTF16("c"), MockChooserController::kSignalStrengthLevel1Bar,
- MockChooserController::ConnectedPairedStatus::NONE);
-
- // Select option 1.
- table_view_->Select(1);
-
- // Update option 1.
- mock_chooser_controller_->OptionUpdated(
- base::ASCIIToUTF16("b"), base::ASCIIToUTF16("d"),
- MockChooserController::kNoSignalStrengthLevelImage,
- MockChooserController::ConnectedPairedStatus::CONNECTED |
- MockChooserController::ConnectedPairedStatus::PAIRED);
-
- EXPECT_EQ(1UL, table_view_->selection_model().size());
- EXPECT_EQ(1, table_view_->FirstSelectedRow());
- EXPECT_EQ(GetPairedText("a"), table_model_->GetText(0, 0));
- EXPECT_EQ(GetPairedText("d"), table_model_->GetText(1, 0));
- EXPECT_EQ(base::ASCIIToUTF16("c"), table_model_->GetText(2, 0));
-}
-
-TEST_F(ChooserContentViewTest,
- AddAnOptionAndSelectItAndRemoveTheSelectedOption) {
- EXPECT_CALL(*mock_table_view_observer_, OnSelectionChanged()).Times(2);
-
- mock_chooser_controller_->OptionAdded(
- base::ASCIIToUTF16("a"),
- MockChooserController::kNoSignalStrengthLevelImage,
- MockChooserController::ConnectedPairedStatus::CONNECTED |
- MockChooserController::ConnectedPairedStatus::PAIRED);
-
- // Select option 0.
- table_view_->Select(0);
- EXPECT_EQ(1UL, table_view_->selection_model().size());
- EXPECT_EQ(0, table_view_->FirstSelectedRow());
-
- // Remove option 0.
- mock_chooser_controller_->OptionRemoved(base::ASCIIToUTF16("a"));
- // There is no option shown now. But since "No devices found."
- // needs to be displayed on the |table_view_|, the number of rows is 1.
- EXPECT_EQ(1, table_view_->RowCount());
- EXPECT_EQ(
- l10n_util::GetStringUTF16(IDS_DEVICE_CHOOSER_NO_DEVICES_FOUND_PROMPT),
- table_model_->GetText(0, 0));
- // |table_view_| should be disabled since all options are removed.
- EXPECT_FALSE(table_view_->enabled());
- // No option selected.
- EXPECT_EQ(0UL, table_view_->selection_model().size());
- EXPECT_EQ(-1, table_view_->FirstSelectedRow());
-}
-
-TEST_F(ChooserContentViewTest, AdapterOnAndOffAndOn) {
- EXPECT_CALL(*mock_table_view_observer_, OnSelectionChanged()).Times(2);
-
- mock_chooser_controller_->OnAdapterPresenceChanged(
- content::BluetoothChooser::AdapterPresence::POWERED_ON);
- EXPECT_TRUE(table_view_->visible());
- // Since "No devices found." needs to be displayed on the |table_view_|,
- // the number of rows is 1.
- EXPECT_EQ(1, table_view_->RowCount());
- EXPECT_EQ(
- l10n_util::GetStringUTF16(IDS_DEVICE_CHOOSER_NO_DEVICES_FOUND_PROMPT),
- table_model_->GetText(0, 0));
- // |table_view_| should be disabled since there is no option shown.
- EXPECT_FALSE(table_view_->enabled());
- // No option selected.
- EXPECT_EQ(0UL, table_view_->selection_model().size());
- EXPECT_EQ(-1, table_view_->FirstSelectedRow());
- EXPECT_FALSE(throbber_->visible());
- EXPECT_FALSE(turn_adapter_off_help_->visible());
- EXPECT_EQ(chooser_content_view_->help_and_re_scan_text_,
- footnote_link_->text());
-
- mock_chooser_controller_->OptionAdded(
- base::ASCIIToUTF16("a"),
- MockChooserController::kNoSignalStrengthLevelImage,
- MockChooserController::ConnectedPairedStatus::CONNECTED |
- MockChooserController::ConnectedPairedStatus::PAIRED);
- mock_chooser_controller_->OptionAdded(
- base::ASCIIToUTF16("b"), MockChooserController::kSignalStrengthLevel0Bar,
- MockChooserController::ConnectedPairedStatus::NONE);
- mock_chooser_controller_->OptionAdded(
- base::ASCIIToUTF16("c"), MockChooserController::kSignalStrengthLevel1Bar,
- MockChooserController::ConnectedPairedStatus::NONE);
-
- table_view_->Select(1);
-
- mock_chooser_controller_->OnAdapterPresenceChanged(
- content::BluetoothChooser::AdapterPresence::POWERED_OFF);
- EXPECT_EQ(0u, mock_chooser_controller_->NumOptions());
- EXPECT_FALSE(table_view_->visible());
- EXPECT_FALSE(throbber_->visible());
- EXPECT_TRUE(turn_adapter_off_help_->visible());
- EXPECT_EQ(chooser_content_view_->help_text_, footnote_link_->text());
-
- mock_chooser_controller_->OnAdapterPresenceChanged(
- content::BluetoothChooser::AdapterPresence::POWERED_ON);
- EXPECT_EQ(0u, mock_chooser_controller_->NumOptions());
- EXPECT_TRUE(table_view_->visible());
- EXPECT_EQ(1, table_view_->RowCount());
- EXPECT_EQ(
- l10n_util::GetStringUTF16(IDS_DEVICE_CHOOSER_NO_DEVICES_FOUND_PROMPT),
- table_model_->GetText(0, 0));
- EXPECT_FALSE(table_view_->enabled());
- EXPECT_EQ(0UL, table_view_->selection_model().size());
- EXPECT_EQ(-1, table_view_->FirstSelectedRow());
- EXPECT_FALSE(throbber_->visible());
- EXPECT_FALSE(turn_adapter_off_help_->visible());
- EXPECT_EQ(chooser_content_view_->help_and_re_scan_text_,
- footnote_link_->text());
-}
-
-TEST_F(ChooserContentViewTest, DiscoveringAndNoOptionAddedAndIdle) {
- EXPECT_CALL(*mock_table_view_observer_, OnSelectionChanged()).Times(2);
-
- mock_chooser_controller_->OptionAdded(
- base::ASCIIToUTF16("a"),
- MockChooserController::kNoSignalStrengthLevelImage,
- MockChooserController::ConnectedPairedStatus::CONNECTED |
- MockChooserController::ConnectedPairedStatus::PAIRED);
- mock_chooser_controller_->OptionAdded(
- base::ASCIIToUTF16("b"), MockChooserController::kSignalStrengthLevel0Bar,
- MockChooserController::ConnectedPairedStatus::NONE);
- mock_chooser_controller_->OptionAdded(
- base::ASCIIToUTF16("c"), MockChooserController::kSignalStrengthLevel1Bar,
- MockChooserController::ConnectedPairedStatus::NONE);
- table_view_->Select(1);
-
- mock_chooser_controller_->OnDiscoveryStateChanged(
- content::BluetoothChooser::DiscoveryState::DISCOVERING);
- EXPECT_FALSE(table_view_->visible());
- EXPECT_TRUE(throbber_->visible());
- EXPECT_EQ(chooser_content_view_->help_and_scanning_text_,
- footnote_link_->text());
-
- mock_chooser_controller_->OnDiscoveryStateChanged(
- content::BluetoothChooser::DiscoveryState::IDLE);
- EXPECT_TRUE(table_view_->visible());
- // Since "No devices found." needs to be displayed on the |table_view_|,
- // the number of rows is 1.
- EXPECT_EQ(1, table_view_->RowCount());
- EXPECT_EQ(
- l10n_util::GetStringUTF16(IDS_DEVICE_CHOOSER_NO_DEVICES_FOUND_PROMPT),
- table_model_->GetText(0, 0));
- // |table_view_| should be disabled since there is no option shown.
- EXPECT_FALSE(table_view_->enabled());
- // No option selected.
- EXPECT_EQ(0UL, table_view_->selection_model().size());
- EXPECT_EQ(-1, table_view_->FirstSelectedRow());
- EXPECT_FALSE(throbber_->visible());
- EXPECT_EQ(chooser_content_view_->help_and_re_scan_text_,
- footnote_link_->text());
-}
-
-TEST_F(ChooserContentViewTest, DiscoveringAndOneOptionAddedAndSelectedAndIdle) {
- EXPECT_CALL(*mock_table_view_observer_, OnSelectionChanged()).Times(3);
-
- mock_chooser_controller_->OptionAdded(
- base::ASCIIToUTF16("a"),
- MockChooserController::kNoSignalStrengthLevelImage,
- MockChooserController::ConnectedPairedStatus::CONNECTED |
- MockChooserController::ConnectedPairedStatus::PAIRED);
- mock_chooser_controller_->OptionAdded(
- base::ASCIIToUTF16("b"), MockChooserController::kSignalStrengthLevel0Bar,
- MockChooserController::ConnectedPairedStatus::NONE);
- mock_chooser_controller_->OptionAdded(
- base::ASCIIToUTF16("c"), MockChooserController::kSignalStrengthLevel1Bar,
- MockChooserController::ConnectedPairedStatus::NONE);
- table_view_->Select(1);
-
- mock_chooser_controller_->OnDiscoveryStateChanged(
- content::BluetoothChooser::DiscoveryState::DISCOVERING);
- mock_chooser_controller_->OptionAdded(
- base::ASCIIToUTF16("d"), MockChooserController::kSignalStrengthLevel2Bar,
- MockChooserController::ConnectedPairedStatus::NONE);
- EXPECT_TRUE(table_view_->visible());
- EXPECT_EQ(1, table_view_->RowCount());
- EXPECT_EQ(base::ASCIIToUTF16("d"), table_model_->GetText(0, 0));
- // |table_view_| should be enabled since there is an option.
- EXPECT_TRUE(table_view_->enabled());
- // No option selected.
- EXPECT_EQ(0UL, table_view_->selection_model().size());
- EXPECT_EQ(-1, table_view_->FirstSelectedRow());
- EXPECT_FALSE(throbber_->visible());
- EXPECT_EQ(chooser_content_view_->help_and_scanning_text_,
- footnote_link_->text());
- table_view_->Select(0);
- EXPECT_EQ(1UL, table_view_->selection_model().size());
- EXPECT_EQ(0, table_view_->FirstSelectedRow());
-
- mock_chooser_controller_->OnDiscoveryStateChanged(
- content::BluetoothChooser::DiscoveryState::IDLE);
- EXPECT_TRUE(table_view_->visible());
- EXPECT_EQ(1, table_view_->RowCount());
- EXPECT_EQ(base::ASCIIToUTF16("d"), table_model_->GetText(0, 0));
- // |table_view_| should be enabled since there is an option.
- EXPECT_TRUE(table_view_->enabled());
- EXPECT_EQ(1UL, table_view_->selection_model().size());
- EXPECT_EQ(0, table_view_->FirstSelectedRow());
- EXPECT_FALSE(throbber_->visible());
- EXPECT_EQ(chooser_content_view_->help_and_re_scan_text_,
- footnote_link_->text());
-}
-
-TEST_F(ChooserContentViewTest, ClickAdapterOffHelpLink) {
- EXPECT_CALL(*mock_chooser_controller_, OpenAdapterOffHelpUrl()).Times(1);
- turn_adapter_off_help_->LinkClicked(nullptr, 0);
-}
-
-TEST_F(ChooserContentViewTest, ClickRescanLink) {
- EXPECT_CALL(*mock_chooser_controller_, RefreshOptions()).Times(1);
- chooser_content_view_->StyledLabelLinkClicked(
- footnote_link_, chooser_content_view_->re_scan_text_range_, 0);
-}
-
-TEST_F(ChooserContentViewTest, ClickGetHelpLink) {
- EXPECT_CALL(*mock_chooser_controller_, OpenHelpCenterUrl()).Times(1);
- chooser_content_view_->StyledLabelLinkClicked(
- footnote_link_, chooser_content_view_->help_text_range_, 0);
-}
« no previous file with comments | « chrome/browser/ui/views/chooser_content_view.cc ('k') | chrome/browser/ui/views/device_chooser_content_view.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698