1// Copyright (c) 2009 The Chromium Authors. All rights reserved. 2// Use of this source code is governed by a BSD-style license that can be 3// found in the LICENSE file. 4 5#import "chrome/browser/autocomplete/autocomplete_edit_view_mac.h" 6 7#include "base/string_util.h" 8#include "base/sys_string_conversions.h" 9#include "base/utf_string_conversions.h" 10#include "chrome/browser/autocomplete/autocomplete.h" 11#include "testing/platform_test.h" 12#include "ui/base/clipboard/clipboard.h" 13#include "ui/base/clipboard/scoped_clipboard_writer.h" 14#include "ui/gfx/size.h" 15 16namespace { 17 18TEST(AutocompleteEditViewMacTest, GetClipboardText) { 19 ui::Clipboard clipboard; 20 string16 text; 21 22 // Does an empty clipboard get empty text? 23 clipboard.WriteObjects(ui::Clipboard::ObjectMap()); 24 text = AutocompleteEditViewMac::GetClipboardText(&clipboard); 25 EXPECT_EQ(string16(), text); 26 27 const string16 plainText(ASCIIToUTF16("test text")); 28 const std::string url("http://www.example.com/"); 29 const string16 title(ASCIIToUTF16("The Example Company")), title_result; 30 31 // Can we pull straight text off the clipboard? 32 { 33 ui::ScopedClipboardWriter clipboard_writer(&clipboard); 34 clipboard_writer.WriteText(plainText); 35 } 36 37 text = AutocompleteEditViewMac::GetClipboardText(&clipboard); 38 EXPECT_EQ(plainText, text); 39 40 // Can we pull a bookmark off the clipboard? 41 { 42 ui::ScopedClipboardWriter clipboard_writer(&clipboard); 43 clipboard_writer.WriteBookmark(title, url); 44 } 45 46 text = AutocompleteEditViewMac::GetClipboardText(&clipboard); 47 EXPECT_EQ(ASCIIToUTF16(url), text); 48 49 // Do we pull text in preference to a bookmark? 50 { 51 ui::ScopedClipboardWriter clipboard_writer(&clipboard); 52 clipboard_writer.WriteText(plainText); 53 clipboard_writer.WriteBookmark(title, url); 54 } 55 56 text = AutocompleteEditViewMac::GetClipboardText(&clipboard); 57 EXPECT_EQ(plainText, text); 58 59 // Do we get nothing if there is neither text nor a bookmark? 60 { 61 const string16 markup(ASCIIToUTF16("<strong>Hi!</string>")); 62 ui::ScopedClipboardWriter clipboard_writer(&clipboard); 63 clipboard_writer.WriteHTML(markup, url); 64 } 65 66 text = AutocompleteEditViewMac::GetClipboardText(&clipboard); 67 EXPECT_TRUE(text.empty()); 68} 69 70TEST(AutocompleteEditViewMacTest, GetFieldFont) { 71 EXPECT_TRUE(AutocompleteEditViewMac::GetFieldFont()); 72} 73 74} // namespace 75