Index: ui/base/test/fake_clipboard.h |
diff --git a/ui/base/test/fake_clipboard.h b/ui/base/test/fake_clipboard.h |
new file mode 100644 |
index 0000000000000000000000000000000000000000..8b5a3f5da6551862d2282baac02234beda378464 |
--- /dev/null |
+++ b/ui/base/test/fake_clipboard.h |
@@ -0,0 +1,81 @@ |
+// Copyright 2014 The Chromium Authors. All rights reserved. |
+// Use of this source code is governed by a BSD-style license that can be |
+// found in the LICENSE file. |
+ |
+#ifndef UI_BASE_TEST_FAKE_CLIPBOARD_H_ |
+#define UI_BASE_TEST_FAKE_CLIPBOARD_H_ |
+ |
+#include <map> |
+#include "third_party/skia/include/core/SkBitmap.h" |
+#include "ui/base/clipboard/clipboard.h" |
+ |
+namespace ui { |
+ |
+class FakeClipboard : public Clipboard { |
sky
2014/11/14 02:10:31
TestClipboard.
dcheng
2014/11/14 03:30:29
Done.
|
+ public: |
+ FakeClipboard(); |
+ ~FakeClipboard() override; |
+ |
+ // Clipboard overrides. |
+ uint64 GetSequenceNumber(ClipboardType type) const override; |
+ bool IsFormatAvailable(const FormatType& format, |
+ ClipboardType type) const override; |
+ void Clear(ClipboardType type) override; |
+ void ReadAvailableTypes(ClipboardType type, |
+ std::vector<base::string16>* types, |
+ bool* contains_filenames) const override; |
+ void ReadText(ClipboardType type, base::string16* result) const override; |
+ void ReadAsciiText(ClipboardType type, std::string* result) const override; |
+ void ReadHTML(ClipboardType type, |
+ base::string16* markup, |
+ std::string* src_url, |
+ uint32* fragment_start, |
+ uint32* fragment_end) const override; |
+ void ReadRTF(ClipboardType type, std::string* result) const override; |
+ SkBitmap ReadImage(ClipboardType type) const override; |
+ void ReadCustomData(ClipboardType clipboard_type, |
+ const base::string16& type, |
+ base::string16* result) const override; |
+ void ReadBookmark(base::string16* title, std::string* url) const override; |
+ void ReadData(const FormatType& format, std::string* result) const override; |
+ void WriteObjects(ClipboardType type, const ObjectMap& objects) override; |
+ void WriteText(const char* text_data, size_t text_len) override; |
+ void WriteHTML(const char* markup_data, |
+ size_t markup_len, |
+ const char* url_data, |
+ size_t url_len) override; |
+ void WriteRTF(const char* rtf_data, size_t data_len) override; |
+ void WriteBookmark(const char* title_data, |
+ size_t title_len, |
+ const char* url_data, |
+ size_t url_len) override; |
+ void WriteWebSmartPaste() override; |
+ void WriteBitmap(const SkBitmap& bitmap) override; |
+ void WriteData(const FormatType& format, |
+ const char* data_data, |
+ size_t data_len) override; |
+ |
+ private: |
+ struct DataStore { |
+ DataStore(); |
+ ~DataStore(); |
+ void Clear(); |
+ uint64 sequence_number; |
+ std::map<FormatType, std::string> data; |
+ std::string url_title; |
+ SkBitmap image; |
+ }; |
+ |
+ // The non-const versions increment the sequence number as a side effect. |
+ const DataStore& GetStore(ClipboardType type) const; |
+ const DataStore& GetDefaultStore() const; |
+ DataStore& GetStore(ClipboardType type); |
+ DataStore& GetDefaultStore(); |
+ |
+ ClipboardType default_store_type_; |
+ mutable std::map<ClipboardType, DataStore> stores_; |
+}; |
sky
2014/11/14 02:10:31
DISALLOW...
dcheng
2014/11/14 03:30:28
Done.
|
+ |
+} // namespace ui |
+ |
+#endif // UI_BASE_TEST_FAKE_CLIPBOARD_H_ |