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

Unified Diff: services/ui/public/interfaces/ime/ime_struct_traits_unittest.cc

Issue 2839243002: IME for Mus: Structs and StructTraits for IME Candidate Window. (Closed)
Patch Set: Created 3 years, 8 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 side-by-side diff with in-line comments
Download patch
Index: services/ui/public/interfaces/ime/ime_struct_traits_unittest.cc
diff --git a/services/ui/public/interfaces/ime/ime_struct_traits_unittest.cc b/services/ui/public/interfaces/ime/ime_struct_traits_unittest.cc
index ebc6043e0b17a4758bef303a5e54ce38821c3908..cf7b4e66988411a0391fc19388d5bd4abfcee176 100644
--- a/services/ui/public/interfaces/ime/ime_struct_traits_unittest.cc
+++ b/services/ui/public/interfaces/ime/ime_struct_traits_unittest.cc
@@ -26,6 +26,16 @@ class IMEStructTraitsTest : public testing::Test,
private:
// mojom::IMEStructTraitsTest:
+ void EchoCandidateWindowProperties(
+ const CandidateWindow::CandidateWindowProperty& in,
+ const EchoCandidateWindowPropertiesCallback& callback) override {
+ callback.Run(in);
+ }
+ void EchoCandidateWindowEntry(
+ const CandidateWindow::Entry& in,
+ const EchoCandidateWindowEntryCallback& callback) override {
+ callback.Run(in);
+ }
void EchoCompositionText(
const CompositionText& in,
const EchoCompositionTextCallback& callback) override {
@@ -48,6 +58,62 @@ class IMEStructTraitsTest : public testing::Test,
} // namespace
+TEST_F(IMEStructTraitsTest, CandidateWindowProperties) {
+ CandidateWindow::CandidateWindowProperty input;
+ input.page_size = 7;
+ input.cursor_position = 3;
+ input.is_cursor_visible = true;
+ input.is_vertical = false;
+ input.show_window_at_composition = true;
+ input.auxiliary_text = "abcdefghij";
+ input.is_auxiliary_text_visible = false;
+
+ mojom::IMEStructTraitsTestPtr proxy = GetTraitsTestProxy();
+ CandidateWindow::CandidateWindowProperty output;
+ proxy->EchoCandidateWindowProperties(input, &output);
+
+ EXPECT_EQ(input.page_size, output.page_size);
+ EXPECT_EQ(input.cursor_position, output.cursor_position);
+ EXPECT_EQ(input.is_cursor_visible, output.is_cursor_visible);
+ EXPECT_EQ(input.is_vertical, output.is_vertical);
+ EXPECT_EQ(input.show_window_at_composition,
+ output.show_window_at_composition);
+ EXPECT_EQ(input.auxiliary_text, output.auxiliary_text);
+ EXPECT_EQ(input.is_auxiliary_text_visible, output.is_auxiliary_text_visible);
+
+ // Reverse boolean fields and check we still serialize/deserialize correctly.
+ input.is_cursor_visible = !input.is_cursor_visible;
+ input.is_vertical = !input.is_vertical;
+ input.show_window_at_composition = !input.show_window_at_composition;
+ input.is_auxiliary_text_visible = !input.is_auxiliary_text_visible;
+ proxy->EchoCandidateWindowProperties(input, &output);
+
+ EXPECT_EQ(input.is_cursor_visible, output.is_cursor_visible);
+ EXPECT_EQ(input.is_vertical, output.is_vertical);
+ EXPECT_EQ(input.show_window_at_composition,
+ output.show_window_at_composition);
+ EXPECT_EQ(input.is_auxiliary_text_visible, output.is_auxiliary_text_visible);
+}
+
+TEST_F(IMEStructTraitsTest, CandidateWindowEntry) {
+ CandidateWindow::Entry input;
+ input.value = base::UTF8ToUTF16("entry_value");
+ input.label = base::UTF8ToUTF16("entry_label");
+ input.annotation = base::UTF8ToUTF16("entry_annotation");
+ input.description_title = base::UTF8ToUTF16("entry_description_title");
+ input.description_body = base::UTF8ToUTF16("entry_description_body");
+
+ mojom::IMEStructTraitsTestPtr proxy = GetTraitsTestProxy();
+ CandidateWindow::Entry output;
+ proxy->EchoCandidateWindowEntry(input, &output);
+
+ EXPECT_EQ(input.value, output.value);
+ EXPECT_EQ(input.label, output.label);
+ EXPECT_EQ(input.annotation, output.annotation);
+ EXPECT_EQ(input.description_title, output.description_title);
+ EXPECT_EQ(input.description_body, output.description_body);
+}
+
TEST_F(IMEStructTraitsTest, CompositionText) {
CompositionText input;
input.text = base::UTF8ToUTF16("abcdefghij");

Powered by Google App Engine
This is Rietveld 408576698