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

Unified Diff: ui/views/controls/combobox/combobox_unittest.cc

Issue 376703002: MacViews: Tweak ComboboxTest.GetTextForRowTest to get it to pass. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix failing tests from fallout Created 6 years, 5 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
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: ui/views/controls/combobox/combobox_unittest.cc
diff --git a/ui/views/controls/combobox/combobox_unittest.cc b/ui/views/controls/combobox/combobox_unittest.cc
index 67625a2aea12d06639009647fc7b37884ed8d167..d5bce974547e457791de1809d31369f13d112c99 100644
--- a/ui/views/controls/combobox/combobox_unittest.cc
+++ b/ui/views/controls/combobox/combobox_unittest.cc
@@ -92,9 +92,11 @@ class TestComboboxModel : public ui::ComboboxModel {
TestComboboxModel() {}
virtual ~TestComboboxModel() {}
+ static const int kItemCount = 10;
+
// ui::ComboboxModel:
virtual int GetItemCount() const OVERRIDE {
- return 10;
+ return kItemCount;
}
virtual base::string16 GetItemAt(int index) OVERRIDE {
if (IsItemSeparatorAt(index)) {
@@ -107,6 +109,16 @@ class TestComboboxModel : public ui::ComboboxModel {
return separators_.find(index) != separators_.end();
}
+ virtual int GetDefaultIndex() const OVERRIDE {
+ // Return the first index that is not a separator.
+ for (int index = 0; index < kItemCount; ++index) {
+ if (separators_.find(index) == separators_.end())
+ return index;
+ }
+ NOTREACHED();
+ return 0;
+ }
+
void SetSeparators(const std::set<int>& separators) {
separators_ = separators;
}
@@ -200,9 +212,12 @@ class ComboboxTest : public ViewsTestBase {
ViewsTestBase::TearDown();
}
- void InitCombobox() {
+ void InitCombobox(const std::set<int>* separators = NULL) {
sadrul 2014/07/10 15:24:35 I believe default parameters are not allowed. Just
Andre 2014/07/10 17:44:27 Done.
model_.reset(new TestComboboxModel());
+ if (separators)
+ model_->SetSeparators(*separators);
+
ASSERT_FALSE(combobox_);
combobox_ = new TestCombobox(model_.get());
combobox_->set_id(1);
@@ -304,10 +319,9 @@ TEST_F(ComboboxTest, DisabilityTest) {
// Verifies that we don't select a separator line in combobox when navigating
// through keyboard.
TEST_F(ComboboxTest, SkipSeparatorSimple) {
- InitCombobox();
std::set<int> separators;
separators.insert(2);
- model_->SetSeparators(separators);
+ InitCombobox(&separators);
EXPECT_EQ(0, combobox_->selected_index());
SendKeyEvent(ui::VKEY_DOWN);
EXPECT_EQ(1, combobox_->selected_index());
@@ -326,17 +340,16 @@ TEST_F(ComboboxTest, SkipSeparatorSimple) {
// Verifies that we never select the separator that is in the beginning of the
// combobox list when navigating through keyboard.
TEST_F(ComboboxTest, SkipSeparatorBeginning) {
- InitCombobox();
std::set<int> separators;
separators.insert(0);
- model_->SetSeparators(separators);
- EXPECT_EQ(0, combobox_->selected_index());
- SendKeyEvent(ui::VKEY_DOWN);
+ InitCombobox(&separators);
EXPECT_EQ(1, combobox_->selected_index());
SendKeyEvent(ui::VKEY_DOWN);
EXPECT_EQ(2, combobox_->selected_index());
+ SendKeyEvent(ui::VKEY_DOWN);
+ EXPECT_EQ(3, combobox_->selected_index());
SendKeyEvent(ui::VKEY_UP);
- EXPECT_EQ(1, combobox_->selected_index());
+ EXPECT_EQ(2, combobox_->selected_index());
SendKeyEvent(ui::VKEY_HOME);
EXPECT_EQ(1, combobox_->selected_index());
SendKeyEvent(ui::VKEY_PRIOR);
@@ -348,10 +361,9 @@ TEST_F(ComboboxTest, SkipSeparatorBeginning) {
// Verifies that we never select the separator that is in the end of the
// combobox list when navigating through keyboard.
TEST_F(ComboboxTest, SkipSeparatorEnd) {
- InitCombobox();
std::set<int> separators;
- separators.insert(model_->GetItemCount() - 1);
- model_->SetSeparators(separators);
+ separators.insert(TestComboboxModel::kItemCount - 1);
+ InitCombobox(&separators);
combobox_->SetSelectedIndex(8);
SendKeyEvent(ui::VKEY_DOWN);
EXPECT_EQ(8, combobox_->selected_index());
@@ -365,15 +377,14 @@ TEST_F(ComboboxTest, SkipSeparatorEnd) {
// consecutive) that appear in the beginning of the combobox list when
// navigating through keyboard.
TEST_F(ComboboxTest, SkipMultipleSeparatorsAtBeginning) {
- InitCombobox();
std::set<int> separators;
separators.insert(0);
separators.insert(1);
separators.insert(2);
- model_->SetSeparators(separators);
- EXPECT_EQ(0, combobox_->selected_index());
- SendKeyEvent(ui::VKEY_DOWN);
+ InitCombobox(&separators);
EXPECT_EQ(3, combobox_->selected_index());
+ SendKeyEvent(ui::VKEY_DOWN);
+ EXPECT_EQ(4, combobox_->selected_index());
SendKeyEvent(ui::VKEY_UP);
EXPECT_EQ(3, combobox_->selected_index());
SendKeyEvent(ui::VKEY_NEXT);
@@ -390,12 +401,11 @@ TEST_F(ComboboxTest, SkipMultipleSeparatorsAtBeginning) {
// consecutive) that appear in the middle of the combobox list when navigating
// through keyboard.
TEST_F(ComboboxTest, SkipMultipleAdjacentSeparatorsAtMiddle) {
- InitCombobox();
std::set<int> separators;
separators.insert(4);
separators.insert(5);
separators.insert(6);
- model_->SetSeparators(separators);
+ InitCombobox(&separators);
combobox_->SetSelectedIndex(3);
SendKeyEvent(ui::VKEY_DOWN);
EXPECT_EQ(7, combobox_->selected_index());
@@ -407,12 +417,11 @@ TEST_F(ComboboxTest, SkipMultipleAdjacentSeparatorsAtMiddle) {
// consecutive) that appear in the end of the combobox list when navigating
// through keyboard.
TEST_F(ComboboxTest, SkipMultipleSeparatorsAtEnd) {
- InitCombobox();
std::set<int> separators;
separators.insert(7);
separators.insert(8);
separators.insert(9);
- model_->SetSeparators(separators);
+ InitCombobox(&separators);
combobox_->SetSelectedIndex(6);
SendKeyEvent(ui::VKEY_DOWN);
EXPECT_EQ(6, combobox_->selected_index());
@@ -429,12 +438,11 @@ TEST_F(ComboboxTest, SkipMultipleSeparatorsAtEnd) {
}
TEST_F(ComboboxTest, GetTextForRowTest) {
- InitCombobox();
std::set<int> separators;
separators.insert(0);
separators.insert(1);
separators.insert(9);
- model_->SetSeparators(separators);
+ InitCombobox(&separators);
for (int i = 0; i < combobox_->GetRowCount(); ++i) {
if (separators.count(i) != 0) {
EXPECT_TRUE(combobox_->GetTextForRow(i).empty()) << i;
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698