Index: ui/views/controls/textfield/textfield_views_model_unittest.cc |
diff --git a/ui/views/controls/textfield/textfield_views_model_unittest.cc b/ui/views/controls/textfield/textfield_views_model_unittest.cc |
index 31f6563b6035ece403de26e6a754ae879078d739..2003891572929ceb022aa5fe31dd683466e383b7 100644 |
--- a/ui/views/controls/textfield/textfield_views_model_unittest.cc |
+++ b/ui/views/controls/textfield/textfield_views_model_unittest.cc |
@@ -244,7 +244,6 @@ TEST_F(TextfieldViewsModelTest, EmptyString) { |
TextfieldViewsModel model(NULL); |
EXPECT_EQ(string16(), model.GetText()); |
EXPECT_EQ(string16(), model.GetSelectedText()); |
- EXPECT_EQ(string16(), model.GetVisibleText()); |
model.MoveCursorLeft(gfx::CHARACTER_BREAK, true); |
EXPECT_EQ(0U, model.GetCursorPosition()); |
@@ -414,27 +413,6 @@ TEST_F(TextfieldViewsModelTest, SelectionAndEdit) { |
EXPECT_STR_EQ("BEE", model.GetText()); |
} |
-TEST_F(TextfieldViewsModelTest, Password) { |
- TextfieldViewsModel model(NULL); |
- model.set_is_password(true); |
- model.Append(ASCIIToUTF16("HELLO")); |
- EXPECT_STR_EQ("*****", model.GetVisibleText()); |
- EXPECT_STR_EQ("HELLO", model.GetText()); |
- EXPECT_TRUE(model.Delete()); |
- |
- EXPECT_STR_EQ("****", model.GetVisibleText()); |
- EXPECT_STR_EQ("ELLO", model.GetText()); |
- EXPECT_EQ(0U, model.GetCursorPosition()); |
- |
- model.SelectAll(); |
- EXPECT_STR_EQ("ELLO", model.GetSelectedText()); |
- EXPECT_EQ(4U, model.GetCursorPosition()); |
- |
- model.InsertChar('X'); |
- EXPECT_STR_EQ("*", model.GetVisibleText()); |
- EXPECT_STR_EQ("X", model.GetText()); |
-} |
- |
TEST_F(TextfieldViewsModelTest, Word) { |
TextfieldViewsModel model(NULL); |
model.Append( |
@@ -479,7 +457,7 @@ TEST_F(TextfieldViewsModelTest, Word) { |
EXPECT_STR_EQ("The answer to Life", model.GetSelectedText()); |
model.ReplaceChar('4'); |
EXPECT_EQ(string16(), model.GetSelectedText()); |
- EXPECT_STR_EQ("42", model.GetVisibleText()); |
+ EXPECT_STR_EQ("42", model.GetText()); |
} |
TEST_F(TextfieldViewsModelTest, SetText) { |
@@ -517,31 +495,50 @@ TEST_F(TextfieldViewsModelTest, MAYBE_Clipboard) { |
string16 clipboard_text; |
TextfieldViewsModel model(NULL); |
model.Append(ASCIIToUTF16("HELLO WORLD")); |
- model.MoveCursorRight(gfx::LINE_BREAK, false); |
- // Test for cut: Empty selection. |
+ // Cut with an empty selection should do nothing. |
+ model.MoveCursorRight(gfx::LINE_BREAK, false); |
EXPECT_FALSE(model.Cut()); |
clipboard->ReadText(ui::Clipboard::BUFFER_STANDARD, &clipboard_text); |
- EXPECT_STR_EQ(UTF16ToUTF8(initial_clipboard_text), clipboard_text); |
+ EXPECT_EQ(initial_clipboard_text, clipboard_text); |
EXPECT_STR_EQ("HELLO WORLD", model.GetText()); |
EXPECT_EQ(11U, model.GetCursorPosition()); |
- // Test for cut: Non-empty selection. |
- model.MoveCursorLeft(gfx::WORD_BREAK, true); |
- EXPECT_TRUE(model.Cut()); |
+ // Copy with an empty selection should do nothing. |
+ model.Copy(); |
clipboard->ReadText(ui::Clipboard::BUFFER_STANDARD, &clipboard_text); |
- EXPECT_STR_EQ("WORLD", clipboard_text); |
- EXPECT_STR_EQ("HELLO ", model.GetText()); |
- EXPECT_EQ(6U, model.GetCursorPosition()); |
+ EXPECT_EQ(initial_clipboard_text, clipboard_text); |
+ EXPECT_STR_EQ("HELLO WORLD", model.GetText()); |
+ EXPECT_EQ(11U, model.GetCursorPosition()); |
- // Test for copy: Empty selection. |
- model.Copy(); |
+ // Cut on obscured (password) text should do nothing. |
+ model.render_text()->SetObscured(true); |
+ model.SelectAll(); |
+ EXPECT_FALSE(model.Cut()); |
+ clipboard->ReadText(ui::Clipboard::BUFFER_STANDARD, &clipboard_text); |
+ EXPECT_EQ(initial_clipboard_text, clipboard_text); |
+ EXPECT_STR_EQ("HELLO WORLD", model.GetText()); |
+ EXPECT_STR_EQ("HELLO WORLD", model.GetSelectedText()); |
+ |
+ // Copy on obscured text should do nothing. |
+ model.SelectAll(); |
+ EXPECT_FALSE(model.Cut()); |
+ clipboard->ReadText(ui::Clipboard::BUFFER_STANDARD, &clipboard_text); |
+ EXPECT_EQ(initial_clipboard_text, clipboard_text); |
+ EXPECT_STR_EQ("HELLO WORLD", model.GetText()); |
+ EXPECT_STR_EQ("HELLO WORLD", model.GetSelectedText()); |
+ |
+ // Cut with non-empty selection. |
+ model.render_text()->SetObscured(false); |
+ model.MoveCursorRight(gfx::LINE_BREAK, false); |
+ model.MoveCursorLeft(gfx::WORD_BREAK, true); |
+ EXPECT_TRUE(model.Cut()); |
clipboard->ReadText(ui::Clipboard::BUFFER_STANDARD, &clipboard_text); |
EXPECT_STR_EQ("WORLD", clipboard_text); |
EXPECT_STR_EQ("HELLO ", model.GetText()); |
EXPECT_EQ(6U, model.GetCursorPosition()); |
- // Test for copy: Non-empty selection. |
+ // Copy with non-empty selection. |
model.Append(ASCIIToUTF16("HELLO WORLD")); |
model.SelectAll(); |
model.Copy(); |
@@ -550,10 +547,11 @@ TEST_F(TextfieldViewsModelTest, MAYBE_Clipboard) { |
EXPECT_STR_EQ("HELLO HELLO WORLD", model.GetText()); |
EXPECT_EQ(17U, model.GetCursorPosition()); |
- // Test for paste. |
+ // Paste (with obscured bit set; should be ignored). |
model.ClearSelection(); |
model.MoveCursorRight(gfx::LINE_BREAK, false); |
model.MoveCursorLeft(gfx::WORD_BREAK, true); |
+ model.render_text()->SetObscured(true); |
EXPECT_TRUE(model.Paste()); |
clipboard->ReadText(ui::Clipboard::BUFFER_STANDARD, &clipboard_text); |
EXPECT_STR_EQ("HELLO HELLO WORLD", clipboard_text); |