1 // Copyright 2014 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.
5 #include "base/strings/utf_string_conversions.h"
6 #include "chrome/browser/ui/browser.h"
7 #include "chrome/browser/ui/pdf/pdf_browsertest_base.h"
8 #include "chrome/browser/ui/tabs/tab_strip_model.h"
9 #include "chrome/test/base/ui_test_utils.h"
10 #include "content/public/browser/web_contents.h"
11 #include "ui/base/clipboard/clipboard.h"
13 // Note: All tests in here require the internal PDF plugin, so they're disabled
14 // in non-official builds. We still compile them though, to prevent bitrot.
16 // These tests are interactive because they access the clipboard.
20 const char kSearchKeyword
[] = "adipiscing";
22 #if defined(GOOGLE_CHROME_BUILD) && (defined(OS_WIN) || defined(OS_LINUX))
23 #define MAYBE_FindAndCopy FindAndCopy
25 // TODO(thestig): http://crbug.com/79837, http://crbug.com/329912
26 #define MAYBE_FindAndCopy DISABLED_FindAndCopy
28 IN_PROC_BROWSER_TEST_F(PDFBrowserTest
, MAYBE_FindAndCopy
) {
29 ASSERT_NO_FATAL_FAILURE(Load());
30 // Verifies that find in page works.
31 ASSERT_EQ(3, ui_test_utils::FindInPage(
32 browser()->tab_strip_model()->GetActiveWebContents(),
33 base::ASCIIToUTF16(kSearchKeyword
),
34 true, false, NULL
, NULL
));
36 // Verify that copying selected text works.
37 ui::Clipboard
* clipboard
= ui::Clipboard::GetForCurrentThread();
38 // Reset the clipboard first.
39 clipboard
->Clear(ui::CLIPBOARD_TYPE_COPY_PASTE
);
41 browser()->tab_strip_model()->GetActiveWebContents()->Copy();
42 ASSERT_NO_FATAL_FAILURE(WaitForResponse());
45 clipboard
->ReadAsciiText(ui::CLIPBOARD_TYPE_COPY_PASTE
, &text
);
46 EXPECT_EQ(kSearchKeyword
, text
);