summaryrefslogtreecommitdiffstats
path: root/base/clipboard_unittest.cc
diff options
context:
space:
mode:
authorjeremy@chromium.org <jeremy@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2008-10-02 22:31:31 +0000
committerjeremy@chromium.org <jeremy@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2008-10-02 22:31:31 +0000
commitb8a21ec037ae12cda22e6429fa6581f98d2914ba (patch)
treea8cf2388b32014b23a56bdf778efb148a18a9970 /base/clipboard_unittest.cc
parentaad08754d7ff3be93fd415a36a588fadd2e34bd0 (diff)
downloadchromium_src-b8a21ec037ae12cda22e6429fa6581f98d2914ba.zip
chromium_src-b8a21ec037ae12cda22e6429fa6581f98d2914ba.tar.gz
chromium_src-b8a21ec037ae12cda22e6429fa6581f98d2914ba.tar.bz2
Bring up clipboard_unittest.cc on the Mac.
Review URL: http://codereview.chromium.org/6424 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@2815 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'base/clipboard_unittest.cc')
-rw-r--r--base/clipboard_unittest.cc160
1 files changed, 99 insertions, 61 deletions
diff --git a/base/clipboard_unittest.cc b/base/clipboard_unittest.cc
index 7bf9fa2..05523d6 100644
--- a/base/clipboard_unittest.cc
+++ b/base/clipboard_unittest.cc
@@ -6,7 +6,6 @@
#include "base/basictypes.h"
#include "base/clipboard.h"
-#include "base/clipboard_util.h"
#include "base/string_util.h"
#include "testing/gtest/include/gtest/gtest.h"
@@ -19,9 +18,10 @@ TEST(ClipboardTest, ClearTest) {
Clipboard clipboard;
clipboard.Clear();
- EXPECT_EQ(false, clipboard.IsFormatAvailable(CF_TEXT));
EXPECT_EQ(false, clipboard.IsFormatAvailable(
- ClipboardUtil::GetHtmlFormat()->cfFormat));
+ Clipboard::GetPlainTextFormatType()));
+ EXPECT_EQ(false, clipboard.IsFormatAvailable(
+ Clipboard::GetHtmlFormatType()));
}
TEST(ClipboardTest, TextTest) {
@@ -32,8 +32,10 @@ TEST(ClipboardTest, TextTest) {
clipboard.Clear();
clipboard.WriteText(text);
- EXPECT_EQ(true, clipboard.IsFormatAvailable(CF_UNICODETEXT));
- EXPECT_EQ(true, clipboard.IsFormatAvailable(CF_TEXT));
+ EXPECT_EQ(true, clipboard.IsFormatAvailable(
+ Clipboard::GetPlainTextWFormatType()));
+ EXPECT_EQ(true, clipboard.IsFormatAvailable(
+ Clipboard::GetPlainTextFormatType()));
clipboard.ReadText(&text_result);
EXPECT_EQ(text, text_result);
clipboard.ReadAsciiText(&ascii_text);
@@ -49,10 +51,15 @@ TEST(ClipboardTest, HTMLTest) {
clipboard.Clear();
clipboard.WriteHTML(markup, url);
EXPECT_EQ(true, clipboard.IsFormatAvailable(
- ClipboardUtil::GetHtmlFormat()->cfFormat));
+ Clipboard::GetHtmlFormatType()));
clipboard.ReadHTML(&markup_result, &url_result);
EXPECT_EQ(markup, markup_result);
+#if defined(OS_MACOSX)
+ // TODO(playmobil): It's not clear that the OS X clipboard needs to support
+ // this.
+#else
EXPECT_EQ(url, url_result);
+#endif
}
TEST(ClipboardTest, TrickyHTMLTest) {
@@ -64,10 +71,16 @@ TEST(ClipboardTest, TrickyHTMLTest) {
clipboard.Clear();
clipboard.WriteHTML(markup, url);
EXPECT_EQ(true, clipboard.IsFormatAvailable(
- ClipboardUtil::GetHtmlFormat()->cfFormat));
+ Clipboard::GetHtmlFormatType()));
clipboard.ReadHTML(&markup_result, &url_result);
EXPECT_EQ(markup, markup_result);
+
+#if defined(OS_MACOSX)
+ // TODO(playmobil): It's not clear that the OS X clipboard needs to support
+ // this.
+#else
EXPECT_EQ(url, url_result);
+#endif
}
TEST(ClipboardTest, BookmarkTest) {
@@ -79,32 +92,10 @@ TEST(ClipboardTest, BookmarkTest) {
clipboard.Clear();
clipboard.WriteBookmark(title, url);
EXPECT_EQ(true,
- clipboard.IsFormatAvailable(ClipboardUtil::GetUrlWFormat()->cfFormat));
- clipboard.ReadBookmark(&title_result, &url_result);
- EXPECT_EQ(title, title_result);
- EXPECT_EQ(url, url_result);
-}
-
-TEST(ClipboardTest, HyperlinkTest) {
- Clipboard clipboard;
-
- std::wstring title(L"The Example Company"), title_result;
- std::string url("http://www.example.com/"), url_result;
- std::wstring html(L"<a href=\"http://www.example.com/\">"
- L"The Example Company</a>"), html_result;
-
- clipboard.Clear();
- clipboard.WriteHyperlink(title, url);
- EXPECT_EQ(true,
- clipboard.IsFormatAvailable(ClipboardUtil::GetUrlWFormat()->cfFormat));
- EXPECT_EQ(true,
- clipboard.IsFormatAvailable(ClipboardUtil::GetHtmlFormat()->cfFormat));
+ clipboard.IsFormatAvailable(Clipboard::GetUrlWFormatType()));
clipboard.ReadBookmark(&title_result, &url_result);
EXPECT_EQ(title, title_result);
EXPECT_EQ(url, url_result);
- clipboard.ReadHTML(&html_result, &url_result);
- EXPECT_EQ(html, html_result);
- //XXX EXPECT_FALSE(url_result.is_valid());
}
TEST(ClipboardTest, MultiFormatTest) {
@@ -119,48 +110,37 @@ TEST(ClipboardTest, MultiFormatTest) {
clipboard.WriteHTML(markup, url);
clipboard.WriteText(text);
EXPECT_EQ(true,
- clipboard.IsFormatAvailable(ClipboardUtil::GetHtmlFormat()->cfFormat));
- EXPECT_EQ(true, clipboard.IsFormatAvailable(CF_UNICODETEXT));
- EXPECT_EQ(true, clipboard.IsFormatAvailable(CF_TEXT));
+ clipboard.IsFormatAvailable(Clipboard::GetHtmlFormatType()));
+ EXPECT_EQ(true, clipboard.IsFormatAvailable(
+ Clipboard::GetPlainTextWFormatType()));
+ EXPECT_EQ(true, clipboard.IsFormatAvailable(
+ Clipboard::GetPlainTextFormatType()));
clipboard.ReadHTML(&markup_result, &url_result);
EXPECT_EQ(markup, markup_result);
+#if defined(OS_MACOSX)
+ // TODO(playmobil): It's not clear that the OS X clipboard needs to support
+ // this.
+#else
EXPECT_EQ(url, url_result);
+#endif
clipboard.ReadText(&text_result);
EXPECT_EQ(text, text_result);
clipboard.ReadAsciiText(&ascii_text);
EXPECT_EQ(WideToUTF8(text), ascii_text);
}
-TEST(ClipboardTest, WebSmartPasteTest) {
- Clipboard clipboard;
-
- clipboard.Clear();
- clipboard.WriteWebSmartPaste();
- EXPECT_EQ(true, clipboard.IsFormatAvailable(
- ClipboardUtil::GetWebKitSmartPasteFormat()->cfFormat));
-}
-
-TEST(ClipboardTest, BitmapTest) {
- unsigned int fake_bitmap[] = {
- 0x46155189, 0xF6A55C8D, 0x79845674, 0xFA57BD89,
- 0x78FD46AE, 0x87C64F5A, 0x36EDC5AF, 0x4378F568,
- 0x91E9F63A, 0xC31EA14F, 0x69AB32DF, 0x643A3FD1,
- };
-
- Clipboard clipboard;
-
- clipboard.Clear();
- clipboard.WriteBitmap(fake_bitmap, gfx::Size(3, 4));
- EXPECT_EQ(true, clipboard.IsFormatAvailable(CF_BITMAP));
-}
-
// Files for this test don't actually need to exist on the file system, just
// don't try to use a non-existent file you've retrieved from the clipboard.
TEST(ClipboardTest, FileTest) {
Clipboard clipboard;
clipboard.Clear();
-
+#if defined(OS_WIN)
std::wstring file = L"C:\\Downloads\\My Downloads\\A Special File.txt";
+#else
+ // OS X will print a warning message if we stick a non-existant file on the
+ // clipboard.
+ std::wstring file = L"/usr/bin/make";
+#endif
clipboard.WriteFile(file);
std::wstring out_file;
clipboard.ReadFile(&out_file);
@@ -170,11 +150,22 @@ TEST(ClipboardTest, FileTest) {
TEST(ClipboardTest, MultipleFilesTest) {
Clipboard clipboard;
clipboard.Clear();
-
+
+#if defined(OS_WIN)
+ std::wstring file1 = L"C:\\Downloads\\My Downloads\\File 1.exe";
+ std::wstring file2 = L"C:\\Downloads\\My Downloads\\File 2.pdf";
+ std::wstring file3 = L"C:\\Downloads\\My Downloads\\File 3.doc";
+#elif defined(OS_MACOSX)
+ // OS X will print a warning message if we stick a non-existant file on the
+ // clipboard.
+ std::wstring file1 = L"/usr/bin/make";
+ std::wstring file2 = L"/usr/bin/man";
+ std::wstring file3 = L"/usr/bin/perl";
+#endif
std::vector<std::wstring> files;
- files.push_back(L"C:\\Downloads\\My Downloads\\File 1.exe");
- files.push_back(L"C:\\Downloads\\My Downloads\\File 2.pdf");
- files.push_back(L"C:\\Downloads\\My Downloads\\File 3.doc");
+ files.push_back(file1);
+ files.push_back(file2);
+ files.push_back(file3);
clipboard.WriteFiles(files);
std::vector<std::wstring> out_files;
@@ -185,3 +176,50 @@ TEST(ClipboardTest, MultipleFilesTest) {
EXPECT_EQ(files[i], out_files[i]);
}
+#if defined(OS_WIN) // Windows only tests.
+TEST(ClipboardTest, HyperlinkTest) {
+ Clipboard clipboard;
+
+ std::wstring title(L"The Example Company"), title_result;
+ std::string url("http://www.example.com/"), url_result;
+ std::wstring html(L"<a href=\"http://www.example.com/\">"
+ L"The Example Company</a>"), html_result;
+
+ clipboard.Clear();
+ clipboard.WriteHyperlink(title, url);
+ EXPECT_EQ(true,
+ clipboard.IsFormatAvailable(Clipboard::GetUrlWFormatType()));
+ EXPECT_EQ(true,
+ clipboard.IsFormatAvailable(Clipboard::GetHtmlFormatType()));
+ clipboard.ReadBookmark(&title_result, &url_result);
+ EXPECT_EQ(title, title_result);
+ EXPECT_EQ(url, url_result);
+ clipboard.ReadHTML(&html_result, &url_result);
+ EXPECT_EQ(html, html_result);
+ //XXX EXPECT_FALSE(url_result.is_valid());
+}
+
+TEST(ClipboardTest, WebSmartPasteTest) {
+ Clipboard clipboard;
+
+ clipboard.Clear();
+ clipboard.WriteWebSmartPaste();
+ EXPECT_EQ(true, clipboard.IsFormatAvailable(
+ Clipboard::GetWebKitSmartPasteFormatType()));
+}
+
+TEST(ClipboardTest, BitmapTest) {
+ unsigned int fake_bitmap[] = {
+ 0x46155189, 0xF6A55C8D, 0x79845674, 0xFA57BD89,
+ 0x78FD46AE, 0x87C64F5A, 0x36EDC5AF, 0x4378F568,
+ 0x91E9F63A, 0xC31EA14F, 0x69AB32DF, 0x643A3FD1,
+ };
+
+ Clipboard clipboard;
+
+ clipboard.Clear();
+ clipboard.WriteBitmap(fake_bitmap, gfx::Size(3, 4));
+ EXPECT_EQ(true, clipboard.IsFormatAvailable(
+ Clipboard::GetBitmapFormatType()));
+}
+#endif