Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(415)

Side by Side Diff: components/mus/clipboard/clipboard_unittest.cc

Issue 2047703003: Revert of Implement ui::ClipboardMus. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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 <stdint.h> 5 #include <stdint.h>
6 #include <utility> 6 #include <utility>
7 7
8 #include "base/bind.h" 8 #include "base/bind.h"
9 #include "base/macros.h" 9 #include "base/macros.h"
10 #include "base/run_loop.h" 10 #include "base/run_loop.h"
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
51 std::vector<std::string> GetAvailableFormatMimeTypes() { 51 std::vector<std::string> GetAvailableFormatMimeTypes() {
52 uint64_t sequence_num = 999999; 52 uint64_t sequence_num = 999999;
53 Array<String> types; 53 Array<String> types;
54 types.push_back(kUninitialized); 54 types.push_back(kUninitialized);
55 clipboard_->GetAvailableMimeTypes( 55 clipboard_->GetAvailableMimeTypes(
56 Clipboard::Type::COPY_PASTE, 56 Clipboard::Type::COPY_PASTE,
57 &sequence_num, &types); 57 &sequence_num, &types);
58 return types.To<std::vector<std::string>>(); 58 return types.To<std::vector<std::string>>();
59 } 59 }
60 60
61 bool GetDataOfType(const std::string& mime_type, std::string* data) { 61 bool GetDataOfType(uint64_t sequence_number, const std::string& mime_type,
62 std::string* data) {
62 bool valid = false; 63 bool valid = false;
63 Array<uint8_t> raw_data; 64 Array<uint8_t> raw_data;
64 uint64_t sequence_number = 0; 65 clipboard_->ReadMimeType(
65 clipboard_->ReadClipboardData(Clipboard::Type::COPY_PASTE, mime_type, 66 sequence_number, Clipboard::Type::COPY_PASTE, mime_type,
66 &sequence_number, &raw_data); 67 &valid, &raw_data);
67 valid = !raw_data.is_null(); 68 valid = valid && !raw_data.is_null();
68 *data = raw_data.is_null() ? "" : raw_data.To<std::string>(); 69 *data = raw_data.is_null() ? "" : raw_data.To<std::string>();
69 return valid; 70 return valid;
70 } 71 }
71 72
72 void SetStringText(const std::string& data) { 73 void SetStringText(const std::string& data) {
73 uint64_t sequence_number; 74 uint64_t sequence_number;
74 Map<String, Array<uint8_t>> mime_data; 75 Map<String, Array<uint8_t>> mime_data;
75 mime_data[mojom::kMimeTypeText] = Array<uint8_t>::From(data); 76 mime_data[Clipboard::MIME_TYPE_TEXT] = Array<uint8_t>::From(data);
76 clipboard_->WriteClipboardData(Clipboard::Type::COPY_PASTE, 77 clipboard_->WriteClipboardData(Clipboard::Type::COPY_PASTE,
77 std::move(mime_data), 78 std::move(mime_data),
78 &sequence_number); 79 &sequence_number);
79 } 80 }
80 81
81 protected: 82 protected:
82 mojom::ClipboardPtr clipboard_; 83 mojom::ClipboardPtr clipboard_;
83 84
84 DISALLOW_COPY_AND_ASSIGN(ClipboardAppTest); 85 DISALLOW_COPY_AND_ASSIGN(ClipboardAppTest);
85 }; 86 };
86 87
87 TEST_F(ClipboardAppTest, EmptyClipboardOK) { 88 TEST_F(ClipboardAppTest, EmptyClipboardOK) {
88 EXPECT_EQ(0ul, GetSequenceNumber()); 89 EXPECT_EQ(0ul, GetSequenceNumber());
89 EXPECT_TRUE(GetAvailableFormatMimeTypes().empty()); 90 EXPECT_TRUE(GetAvailableFormatMimeTypes().empty());
90 std::string data; 91 std::string data;
91 EXPECT_FALSE(GetDataOfType(mojom::kMimeTypeText, &data)); 92 EXPECT_FALSE(GetDataOfType(0ul, Clipboard::MIME_TYPE_TEXT, &data));
92 } 93 }
93 94
94 TEST_F(ClipboardAppTest, CanReadBackText) { 95 TEST_F(ClipboardAppTest, CanReadBackText) {
95 std::string data; 96 std::string data;
96 EXPECT_EQ(0ul, GetSequenceNumber()); 97 EXPECT_EQ(0ul, GetSequenceNumber());
97 EXPECT_FALSE(GetDataOfType(mojom::kMimeTypeText, &data)); 98 EXPECT_FALSE(GetDataOfType(0ul, Clipboard::MIME_TYPE_TEXT, &data));
98 99
99 SetStringText(kPlainTextData); 100 SetStringText(kPlainTextData);
100 EXPECT_EQ(1ul, GetSequenceNumber()); 101 EXPECT_EQ(1ul, GetSequenceNumber());
101 102
102 EXPECT_TRUE(GetDataOfType(mojom::kMimeTypeText, &data)); 103 EXPECT_TRUE(GetDataOfType(1ul, Clipboard::MIME_TYPE_TEXT, &data));
103 EXPECT_EQ(kPlainTextData, data); 104 EXPECT_EQ(kPlainTextData, data);
104 } 105 }
105 106
106 TEST_F(ClipboardAppTest, CanSetMultipleDataTypesAtOnce) { 107 TEST_F(ClipboardAppTest, CanSetMultipleDataTypesAtOnce) {
107 Map<String, Array<uint8_t>> mime_data; 108 Map<String, Array<uint8_t>> mime_data;
108 mime_data[mojom::kMimeTypeText] = 109 mime_data[Clipboard::MIME_TYPE_TEXT] =
109 Array<uint8_t>::From(std::string(kPlainTextData)); 110 Array<uint8_t>::From(std::string(kPlainTextData));
110 mime_data[mojom::kMimeTypeHTML] = 111 mime_data[Clipboard::MIME_TYPE_HTML] =
111 Array<uint8_t>::From(std::string(kHtmlData)); 112 Array<uint8_t>::From(std::string(kHtmlData));
112 113
113 uint64_t sequence_num = 0; 114 uint64_t sequence_num = 0;
114 clipboard_->WriteClipboardData(Clipboard::Type::COPY_PASTE, 115 clipboard_->WriteClipboardData(Clipboard::Type::COPY_PASTE,
115 std::move(mime_data), 116 std::move(mime_data),
116 &sequence_num); 117 &sequence_num);
117 EXPECT_EQ(1ul, sequence_num); 118 EXPECT_EQ(1ul, sequence_num);
118 119
119 std::string data; 120 std::string data;
120 EXPECT_TRUE(GetDataOfType(mojom::kMimeTypeText, &data)); 121 EXPECT_TRUE(GetDataOfType(1ul, Clipboard::MIME_TYPE_TEXT, &data));
121 EXPECT_EQ(kPlainTextData, data); 122 EXPECT_EQ(kPlainTextData, data);
122 EXPECT_TRUE(GetDataOfType(mojom::kMimeTypeHTML, &data)); 123 EXPECT_TRUE(GetDataOfType(1ul, Clipboard::MIME_TYPE_HTML, &data));
123 EXPECT_EQ(kHtmlData, data); 124 EXPECT_EQ(kHtmlData, data);
124 } 125 }
125 126
126 TEST_F(ClipboardAppTest, CanClearClipboardWithZeroArray) { 127 TEST_F(ClipboardAppTest, CanClearClipboardWithZeroArray) {
127 std::string data; 128 std::string data;
128 SetStringText(kPlainTextData); 129 SetStringText(kPlainTextData);
129 EXPECT_EQ(1ul, GetSequenceNumber()); 130 EXPECT_EQ(1ul, GetSequenceNumber());
130 131
131 EXPECT_TRUE(GetDataOfType(mojom::kMimeTypeText, &data)); 132 EXPECT_TRUE(GetDataOfType(1ul, Clipboard::MIME_TYPE_TEXT, &data));
132 EXPECT_EQ(kPlainTextData, data); 133 EXPECT_EQ(kPlainTextData, data);
133 134
134 Map<String, Array<uint8_t>> mime_data; 135 Map<String, Array<uint8_t>> mime_data;
135 uint64_t sequence_num = 0; 136 uint64_t sequence_num = 0;
136 clipboard_->WriteClipboardData(Clipboard::Type::COPY_PASTE, 137 clipboard_->WriteClipboardData(Clipboard::Type::COPY_PASTE,
137 std::move(mime_data), 138 std::move(mime_data),
138 &sequence_num); 139 &sequence_num);
139 140
140 EXPECT_EQ(2ul, sequence_num); 141 EXPECT_EQ(2ul, sequence_num);
141 EXPECT_FALSE(GetDataOfType(mojom::kMimeTypeText, &data)); 142 EXPECT_FALSE(GetDataOfType(2ul, Clipboard::MIME_TYPE_TEXT, &data));
142 } 143 }
143 144
144 } // namespace clipboard 145 } // namespace clipboard
145 } // namespace mus 146 } // namespace mus
OLDNEW
« no previous file with comments | « components/mus/clipboard/clipboard_impl.cc ('k') | components/mus/public/interfaces/clipboard.mojom » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698