OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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/omnibox/omnibox_view.h" | 5 #include "chrome/browser/ui/omnibox/omnibox_view.h" |
6 #include "base/message_loop/message_loop.h" | 6 #include "base/message_loop/message_loop.h" |
7 #include "base/strings/string16.h" | 7 #include "base/strings/string16.h" |
8 #include "base/strings/string_util.h" | 8 #include "base/strings/string_util.h" |
9 #include "base/strings/utf_string_conversions.h" | 9 #include "base/strings/utf_string_conversions.h" |
10 #include "testing/gtest/include/gtest/gtest.h" | 10 #include "testing/gtest/include/gtest/gtest.h" |
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
67 } | 67 } |
68 | 68 |
69 TEST_F(OmniboxViewTest, GetClipboardText) { | 69 TEST_F(OmniboxViewTest, GetClipboardText) { |
70 ui::Clipboard* clipboard = ui::Clipboard::GetForCurrentThread(); | 70 ui::Clipboard* clipboard = ui::Clipboard::GetForCurrentThread(); |
71 | 71 |
72 const base::string16 kPlainText(ASCIIToUTF16("test text")); | 72 const base::string16 kPlainText(ASCIIToUTF16("test text")); |
73 const std::string kURL("http://www.example.com/"); | 73 const std::string kURL("http://www.example.com/"); |
74 | 74 |
75 // Can we pull straight text off the clipboard? | 75 // Can we pull straight text off the clipboard? |
76 { | 76 { |
77 ui::ScopedClipboardWriter clipboard_writer(clipboard, | 77 ui::ScopedClipboardWriter clipboard_writer(ui::CLIPBOARD_TYPE_COPY_PASTE); |
78 ui::CLIPBOARD_TYPE_COPY_PASTE); | |
79 clipboard_writer.WriteText(kPlainText); | 78 clipboard_writer.WriteText(kPlainText); |
80 } | 79 } |
81 EXPECT_EQ(kPlainText, OmniboxView::GetClipboardText()); | 80 EXPECT_EQ(kPlainText, OmniboxView::GetClipboardText()); |
82 | 81 |
83 // Can we pull a string consists of white-space? | 82 // Can we pull a string consists of white-space? |
84 const base::string16 kSpace6(ASCIIToUTF16(" ")); | 83 const base::string16 kSpace6(ASCIIToUTF16(" ")); |
85 const base::string16 kSpace1(ASCIIToUTF16(" ")); | 84 const base::string16 kSpace1(ASCIIToUTF16(" ")); |
86 { | 85 { |
87 ui::ScopedClipboardWriter clipboard_writer(clipboard, | 86 ui::ScopedClipboardWriter clipboard_writer(ui::CLIPBOARD_TYPE_COPY_PASTE); |
88 ui::CLIPBOARD_TYPE_COPY_PASTE); | |
89 clipboard_writer.WriteText(kSpace6); | 87 clipboard_writer.WriteText(kSpace6); |
90 } | 88 } |
91 EXPECT_EQ(kSpace1, OmniboxView::GetClipboardText()); | 89 EXPECT_EQ(kSpace1, OmniboxView::GetClipboardText()); |
92 | 90 |
93 // Does an empty clipboard get empty text? | 91 // Does an empty clipboard get empty text? |
94 clipboard->Clear(ui::CLIPBOARD_TYPE_COPY_PASTE); | 92 clipboard->Clear(ui::CLIPBOARD_TYPE_COPY_PASTE); |
95 EXPECT_EQ(base::string16(), OmniboxView::GetClipboardText()); | 93 EXPECT_EQ(base::string16(), OmniboxView::GetClipboardText()); |
96 | 94 |
97 // Bookmark clipboard apparently not supported on Linux. | 95 // Bookmark clipboard apparently not supported on Linux. |
98 // See TODO on ClipboardText.BookmarkTest. | 96 // See TODO on ClipboardText.BookmarkTest. |
99 #if !defined(OS_POSIX) || defined(OS_MACOSX) | 97 #if !defined(OS_POSIX) || defined(OS_MACOSX) |
100 const base::string16 kTitle(ASCIIToUTF16("The Example Company")); | 98 const base::string16 kTitle(ASCIIToUTF16("The Example Company")); |
101 // Can we pull a bookmark off the clipboard? | 99 // Can we pull a bookmark off the clipboard? |
102 { | 100 { |
103 ui::ScopedClipboardWriter clipboard_writer(clipboard, | 101 ui::ScopedClipboardWriter clipboard_writer(ui::CLIPBOARD_TYPE_COPY_PASTE); |
104 ui::CLIPBOARD_TYPE_COPY_PASTE); | |
105 clipboard_writer.WriteBookmark(kTitle, kURL); | 102 clipboard_writer.WriteBookmark(kTitle, kURL); |
106 } | 103 } |
107 EXPECT_EQ(ASCIIToUTF16(kURL), OmniboxView::GetClipboardText()); | 104 EXPECT_EQ(ASCIIToUTF16(kURL), OmniboxView::GetClipboardText()); |
108 | 105 |
109 // Do we pull text in preference to a bookmark? | 106 // Do we pull text in preference to a bookmark? |
110 { | 107 { |
111 ui::ScopedClipboardWriter clipboard_writer(clipboard, | 108 ui::ScopedClipboardWriter clipboard_writer(ui::CLIPBOARD_TYPE_COPY_PASTE); |
112 ui::CLIPBOARD_TYPE_COPY_PASTE); | |
113 clipboard_writer.WriteText(kPlainText); | 109 clipboard_writer.WriteText(kPlainText); |
114 clipboard_writer.WriteBookmark(kTitle, kURL); | 110 clipboard_writer.WriteBookmark(kTitle, kURL); |
115 } | 111 } |
116 EXPECT_EQ(kPlainText, OmniboxView::GetClipboardText()); | 112 EXPECT_EQ(kPlainText, OmniboxView::GetClipboardText()); |
117 #endif | 113 #endif |
118 | 114 |
119 // Do we get nothing if there is neither text nor a bookmark? | 115 // Do we get nothing if there is neither text nor a bookmark? |
120 { | 116 { |
121 const base::string16 kMarkup(ASCIIToUTF16("<strong>Hi!</string>")); | 117 const base::string16 kMarkup(ASCIIToUTF16("<strong>Hi!</string>")); |
122 ui::ScopedClipboardWriter clipboard_writer(clipboard, | 118 ui::ScopedClipboardWriter clipboard_writer(ui::CLIPBOARD_TYPE_COPY_PASTE); |
123 ui::CLIPBOARD_TYPE_COPY_PASTE); | |
124 clipboard_writer.WriteHTML(kMarkup, kURL); | 119 clipboard_writer.WriteHTML(kMarkup, kURL); |
125 } | 120 } |
126 EXPECT_TRUE(OmniboxView::GetClipboardText().empty()); | 121 EXPECT_TRUE(OmniboxView::GetClipboardText().empty()); |
127 } | 122 } |
128 | 123 |
129 } // namespace | 124 } // namespace |
OLD | NEW |