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

Side by Side Diff: mojo/public/cpp/bindings/tests/union_unittest.cc

Issue 1527183003: Change mojo enums to be scoped enums in the generated C++ bindings. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@mojo-binding-equals
Patch Set: rebase Created 4 years, 11 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 2014 The Chromium Authors. All rights reserved. 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 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 <stddef.h> 5 #include <stddef.h>
6 #include <stdint.h> 6 #include <stdint.h>
7 #include <utility> 7 #include <utility>
8 #include <vector> 8 #include <vector>
9 9
10 #include "base/message_loop/message_loop.h" 10 #include "base/message_loop/message_loop.h"
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after
80 EXPECT_TRUE(pod->is_f_double()); 80 EXPECT_TRUE(pod->is_f_double());
81 EXPECT_EQ(pod->which(), PodUnion::Tag::F_DOUBLE); 81 EXPECT_EQ(pod->which(), PodUnion::Tag::F_DOUBLE);
82 82
83 pod->set_f_bool(true); 83 pod->set_f_bool(true);
84 EXPECT_TRUE(pod->get_f_bool()); 84 EXPECT_TRUE(pod->get_f_bool());
85 pod->set_f_bool(false); 85 pod->set_f_bool(false);
86 EXPECT_FALSE(pod->get_f_bool()); 86 EXPECT_FALSE(pod->get_f_bool());
87 EXPECT_TRUE(pod->is_f_bool()); 87 EXPECT_TRUE(pod->is_f_bool());
88 EXPECT_EQ(pod->which(), PodUnion::Tag::F_BOOL); 88 EXPECT_EQ(pod->which(), PodUnion::Tag::F_BOOL);
89 89
90 pod->set_f_enum(AN_ENUM_SECOND); 90 pod->set_f_enum(AnEnum::SECOND);
91 EXPECT_EQ(AN_ENUM_SECOND, pod->get_f_enum()); 91 EXPECT_EQ(AnEnum::SECOND, pod->get_f_enum());
92 EXPECT_TRUE(pod->is_f_enum()); 92 EXPECT_TRUE(pod->is_f_enum());
93 EXPECT_EQ(pod->which(), PodUnion::Tag::F_ENUM); 93 EXPECT_EQ(pod->which(), PodUnion::Tag::F_ENUM);
94 } 94 }
95 95
96 TEST(UnionTest, PodEquals) { 96 TEST(UnionTest, PodEquals) {
97 PodUnionPtr pod1(PodUnion::New()); 97 PodUnionPtr pod1(PodUnion::New());
98 PodUnionPtr pod2(PodUnion::New()); 98 PodUnionPtr pod2(PodUnion::New());
99 99
100 pod1->set_f_int8(10); 100 pod1->set_f_int8(10);
101 pod2->set_f_int8(10); 101 pod2->set_f_int8(10);
(...skipping 30 matching lines...) Expand all
132 PodUnionPtr pod2; 132 PodUnionPtr pod2;
133 Deserialize_(data, &pod2, nullptr); 133 Deserialize_(data, &pod2, nullptr);
134 134
135 EXPECT_EQ(10, pod2->get_f_int8()); 135 EXPECT_EQ(10, pod2->get_f_int8());
136 EXPECT_TRUE(pod2->is_f_int8()); 136 EXPECT_TRUE(pod2->is_f_int8());
137 EXPECT_EQ(pod2->which(), PodUnion::Tag::F_INT8); 137 EXPECT_EQ(pod2->which(), PodUnion::Tag::F_INT8);
138 } 138 }
139 139
140 TEST(UnionTest, EnumSerialization) { 140 TEST(UnionTest, EnumSerialization) {
141 PodUnionPtr pod1(PodUnion::New()); 141 PodUnionPtr pod1(PodUnion::New());
142 pod1->set_f_enum(AN_ENUM_SECOND); 142 pod1->set_f_enum(AnEnum::SECOND);
143 143
144 size_t size = GetSerializedSize_(pod1, false); 144 size_t size = GetSerializedSize_(pod1, false);
145 EXPECT_EQ(16U, size); 145 EXPECT_EQ(16U, size);
146 146
147 mojo::internal::FixedBufferForTesting buf(size); 147 mojo::internal::FixedBufferForTesting buf(size);
148 internal::PodUnion_Data* data = nullptr; 148 internal::PodUnion_Data* data = nullptr;
149 SerializeUnion_(std::move(pod1), &buf, &data, false); 149 SerializeUnion_(std::move(pod1), &buf, &data, false);
150 150
151 PodUnionPtr pod2; 151 PodUnionPtr pod2;
152 Deserialize_(data, &pod2, nullptr); 152 Deserialize_(data, &pod2, nullptr);
153 153
154 EXPECT_EQ(AN_ENUM_SECOND, pod2->get_f_enum()); 154 EXPECT_EQ(AnEnum::SECOND, pod2->get_f_enum());
155 EXPECT_TRUE(pod2->is_f_enum()); 155 EXPECT_TRUE(pod2->is_f_enum());
156 EXPECT_EQ(pod2->which(), PodUnion::Tag::F_ENUM); 156 EXPECT_EQ(pod2->which(), PodUnion::Tag::F_ENUM);
157 } 157 }
158 158
159 TEST(UnionTest, PodValidation) { 159 TEST(UnionTest, PodValidation) {
160 PodUnionPtr pod(PodUnion::New()); 160 PodUnionPtr pod(PodUnion::New());
161 pod->set_f_int8(10); 161 pod->set_f_int8(10);
162 162
163 size_t size = GetSerializedSize_(pod, false); 163 size_t size = GetSerializedSize_(pod, false);
164 EXPECT_EQ(16U, size); 164 EXPECT_EQ(16U, size);
(...skipping 968 matching lines...) Expand 10 before | Expand all | Expand 10 after
1133 PodUnionPtr pod(PodUnion::New()); 1133 PodUnionPtr pod(PodUnion::New());
1134 pod->set_f_int16(16); 1134 pod->set_f_int16(16);
1135 1135
1136 ptr->Echo(std::move(pod), 1136 ptr->Echo(std::move(pod),
1137 [](PodUnionPtr out) { EXPECT_EQ(16, out->get_f_int16()); }); 1137 [](PodUnionPtr out) { EXPECT_EQ(16, out->get_f_int16()); });
1138 run_loop.RunUntilIdle(); 1138 run_loop.RunUntilIdle();
1139 } 1139 }
1140 1140
1141 } // namespace test 1141 } // namespace test
1142 } // namespace mojo 1142 } // namespace mojo
OLDNEW
« no previous file with comments | « mojo/public/cpp/bindings/tests/sample_service_unittest.cc ('k') | mojo/public/interfaces/bindings/tests/sample_import2.mojom » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698