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

Side by Side Diff: third_party/protobuf/php/tests/test_util.php

Issue 2495533002: third_party/protobuf: Update to HEAD (83d681ee2c) (Closed)
Patch Set: Make chrome settings proto generated file a component Created 4 years 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
(Empty)
1 <?php
2
3 use Foo\TestEnum;
4 use Foo\TestMessage;
5 use Foo\TestMessage_Sub;
6 use Foo\TestPackedMessage;
7 use Foo\TestUnpackedMessage;
8
9 define('MAX_FLOAT_DIFF', 0.000001);
10
11 if (PHP_INT_SIZE == 8) {
12 define('MAX_INT_STRING', '9223372036854775807');
13 define('MAX_INT_UPPER_STRING', '9223372036854775808');
14 } else {
15 define('MAX_INT_STRING', '2147483647');
16 define('MAX_INT_UPPER_STRING', '2147483648');
17 }
18
19 define('MAX_INT32', 2147483647);
20 define('MAX_INT32_FLOAT', 2147483647.0);
21 define('MAX_INT32_STRING', '2147483647');
22
23 define('MIN_INT32', (int)-2147483648);
24 define('MIN_INT32_FLOAT', -2147483648.0);
25 define('MIN_INT32_STRING', '-2147483648');
26
27 define('MAX_UINT32', 4294967295);
28 define('MAX_UINT32_FLOAT', 4294967295.0);
29 define('MAX_UINT32_STRING', '4294967295');
30
31 define('MIN_UINT32', (int)-2147483648);
32 define('MIN_UINT32_FLOAT', -2147483648.0);
33 define('MIN_UINT32_STRING', '-2147483648');
34
35 define('MAX_INT64_STRING', '9223372036854775807');
36 define('MIN_INT64_STRING', '-9223372036854775808');
37 define('MAX_UINT64_STRING', '-9223372036854775808');
38
39 if (PHP_INT_SIZE === 8) {
40 define('MAX_INT64', (int)9223372036854775807);
41 define('MIN_INT64', (int)-9223372036854775808);
42 define('MAX_UINT64', (int)-9223372036854775808);
43 } else {
44 define('MAX_INT64', MAX_INT64_STRING);
45 define('MIN_INT64', MIN_INT64_STRING);
46 define('MAX_UINT64', MAX_UINT64_STRING);
47 }
48
49 class TestUtil
50 {
51
52 public static function setTestMessage(TestMessage $m)
53 {
54 $sub = new TestMessage_Sub();
55
56 $m->setOptionalInt32(-42);
57 $m->setOptionalInt64(-43);
58 $m->setOptionalUint32(42);
59 $m->setOptionalUint64(43);
60 $m->setOptionalSint32(-44);
61 $m->setOptionalSint64(-45);
62 $m->setOptionalFixed32(46);
63 $m->setOptionalFixed64(47);
64 $m->setOptionalSfixed32(-46);
65 $m->setOptionalSfixed64(-47);
66 $m->setOptionalFloat(1.5);
67 $m->setOptionalDouble(1.6);
68 $m->setOptionalBool(true);
69 $m->setOptionalString('a');
70 $m->setOptionalBytes('b');
71 $m->setOptionalEnum(TestEnum::ONE);
72 $m->setOptionalMessage($sub);
73 $m->getOptionalMessage()->SetA(33);
74
75 $m->getRepeatedInt32() []= -42;
76 $m->getRepeatedInt64() []= -43;
77 $m->getRepeatedUint32() []= 42;
78 $m->getRepeatedUint64() []= 43;
79 $m->getRepeatedSint32() []= -44;
80 $m->getRepeatedSint64() []= -45;
81 $m->getRepeatedFixed32() []= 46;
82 $m->getRepeatedFixed64() []= 47;
83 $m->getRepeatedSfixed32() []= -46;
84 $m->getRepeatedSfixed64() []= -47;
85 $m->getRepeatedFloat() []= 1.5;
86 $m->getRepeatedDouble() []= 1.6;
87 $m->getRepeatedBool() []= true;
88 $m->getRepeatedString() []= 'a';
89 $m->getRepeatedBytes() []= 'b';
90 $m->getRepeatedEnum() []= TestEnum::ZERO;
91 $m->getRepeatedMessage() []= new TestMessage_Sub();
92 $m->getRepeatedMessage()[0]->setA(34);
93
94 $m->getRepeatedInt32() []= -52;
95 $m->getRepeatedInt64() []= -53;
96 $m->getRepeatedUint32() []= 52;
97 $m->getRepeatedUint64() []= 53;
98 $m->getRepeatedSint32() []= -54;
99 $m->getRepeatedSint64() []= -55;
100 $m->getRepeatedFixed32() []= 56;
101 $m->getRepeatedFixed64() []= 57;
102 $m->getRepeatedSfixed32() []= -56;
103 $m->getRepeatedSfixed64() []= -57;
104 $m->getRepeatedFloat() []= 2.5;
105 $m->getRepeatedDouble() []= 2.6;
106 $m->getRepeatedBool() []= false;
107 $m->getRepeatedString() []= 'c';
108 $m->getRepeatedBytes() []= 'd';
109 $m->getRepeatedEnum() []= TestEnum::ONE;
110 $m->getRepeatedMessage() []= new TestMessage_Sub();
111 $m->getRepeatedMessage()[1]->SetA(35);
112
113 $m->getMapInt32Int32()[-62] = -62;
114 $m->getMapInt64Int64()[-63] = -63;
115 $m->getMapUint32Uint32()[62] = 62;
116 $m->getMapUint64Uint64()[63] = 63;
117 $m->getMapSint32Sint32()[-64] = -64;
118 $m->getMapSint64Sint64()[-65] = -65;
119 $m->getMapFixed32Fixed32()[66] = 66;
120 $m->getMapFixed64Fixed64()[67] = 67;
121 $m->getMapInt32Float()[1] = 3.5;
122 $m->getMapInt32Double()[1] = 3.6;
123 $m->getMapBoolBool()[true] = true;
124 $m->getMapStringString()['e'] = 'e';
125 $m->getMapInt32Bytes()[1] = 'f';
126 $m->getMapInt32Enum()[1] = TestEnum::ONE;
127 $m->getMapInt32Message()[1] = new TestMessage_Sub();
128 $m->getMapInt32Message()[1]->SetA(36);
129 }
130
131 public static function assertTestMessage(TestMessage $m)
132 {
133 if (PHP_INT_SIZE == 4) {
134 assert('-43' === $m->getOptionalInt64());
135 assert('43' === $m->getOptionalUint64());
136 assert('-45' === $m->getOptionalSint64());
137 assert('47' === $m->getOptionalFixed64());
138 assert('-47' === $m->getOptionalSfixed64());
139 } else {
140 assert(-43 === $m->getOptionalInt64());
141 assert(43 === $m->getOptionalUint64());
142 assert(-45 === $m->getOptionalSint64());
143 assert(47 === $m->getOptionalFixed64());
144 assert(-47 === $m->getOptionalSfixed64());
145 }
146 assert(-42 === $m->getOptionalInt32());
147 assert(42 === $m->getOptionalUint32());
148 assert(-44 === $m->getOptionalSint32());
149 assert(46 === $m->getOptionalFixed32());
150 assert(-46 === $m->getOptionalSfixed32());
151 assert(1.5 === $m->getOptionalFloat());
152 assert(1.6 === $m->getOptionalDouble());
153 assert(true=== $m->getOptionalBool());
154 assert('a' === $m->getOptionalString());
155 assert('b' === $m->getOptionalBytes());
156 assert(TestEnum::ONE === $m->getOptionalEnum());
157 assert(33 === $m->getOptionalMessage()->getA());
158
159 if (PHP_INT_SIZE == 4) {
160 assert('-43' === $m->getRepeatedInt64()[0]);
161 assert('43' === $m->getRepeatedUint64()[0]);
162 assert('-45' === $m->getRepeatedSint64()[0]);
163 assert('47' === $m->getRepeatedFixed64()[0]);
164 assert('-47' === $m->getRepeatedSfixed64()[0]);
165 } else {
166 assert(-43 === $m->getRepeatedInt64()[0]);
167 assert(43 === $m->getRepeatedUint64()[0]);
168 assert(-45 === $m->getRepeatedSint64()[0]);
169 assert(47 === $m->getRepeatedFixed64()[0]);
170 assert(-47 === $m->getRepeatedSfixed64()[0]);
171 }
172 assert(-42 === $m->getRepeatedInt32()[0]);
173 assert(42 === $m->getRepeatedUint32()[0]);
174 assert(-44 === $m->getRepeatedSint32()[0]);
175 assert(46 === $m->getRepeatedFixed32()[0]);
176 assert(-46 === $m->getRepeatedSfixed32()[0]);
177 assert(1.5 === $m->getRepeatedFloat()[0]);
178 assert(1.6 === $m->getRepeatedDouble()[0]);
179 assert(true=== $m->getRepeatedBool()[0]);
180 assert('a' === $m->getRepeatedString()[0]);
181 assert('b' === $m->getRepeatedBytes()[0]);
182 assert(TestEnum::ZERO === $m->getRepeatedEnum()[0]);
183 assert(34 === $m->getRepeatedMessage()[0]->getA());
184
185 if (PHP_INT_SIZE == 4) {
186 assert('-53' === $m->getRepeatedInt64()[1]);
187 assert('53' === $m->getRepeatedUint64()[1]);
188 assert('-55' === $m->getRepeatedSint64()[1]);
189 assert('57' === $m->getRepeatedFixed64()[1]);
190 assert('-57' === $m->getRepeatedSfixed64()[1]);
191 } else {
192 assert(-53 === $m->getRepeatedInt64()[1]);
193 assert(53 === $m->getRepeatedUint64()[1]);
194 assert(-55 === $m->getRepeatedSint64()[1]);
195 assert(57 === $m->getRepeatedFixed64()[1]);
196 assert(-57 === $m->getRepeatedSfixed64()[1]);
197 }
198 assert(-52 === $m->getRepeatedInt32()[1]);
199 assert(52 === $m->getRepeatedUint32()[1]);
200 assert(-54 === $m->getRepeatedSint32()[1]);
201 assert(56 === $m->getRepeatedFixed32()[1]);
202 assert(-56 === $m->getRepeatedSfixed32()[1]);
203 assert(2.5 === $m->getRepeatedFloat()[1]);
204 assert(2.6 === $m->getRepeatedDouble()[1]);
205 assert(false === $m->getRepeatedBool()[1]);
206 assert('c' === $m->getRepeatedString()[1]);
207 assert('d' === $m->getRepeatedBytes()[1]);
208 assert(TestEnum::ONE === $m->getRepeatedEnum()[1]);
209 assert(35 === $m->getRepeatedMessage()[1]->getA());
210
211 if (PHP_INT_SIZE == 4) {
212 assert('-63' === $m->getMapInt64Int64()['-63']);
213 assert('63' === $m->getMapUint64Uint64()['63']);
214 assert('-65' === $m->getMapSint64Sint64()['-65']);
215 assert('67' === $m->getMapFixed64Fixed64()['67']);
216 } else {
217 assert(-63 === $m->getMapInt64Int64()[-63]);
218 assert(63 === $m->getMapUint64Uint64()[63]);
219 assert(-65 === $m->getMapSint64Sint64()[-65]);
220 assert(67 === $m->getMapFixed64Fixed64()[67]);
221 }
222 assert(-62 === $m->getMapInt32Int32()[-62]);
223 assert(62 === $m->getMapUint32Uint32()[62]);
224 assert(-64 === $m->getMapSint32Sint32()[-64]);
225 assert(66 === $m->getMapFixed32Fixed32()[66]);
226 assert(3.5 === $m->getMapInt32Float()[1]);
227 assert(3.6 === $m->getMapInt32Double()[1]);
228 assert(true === $m->getMapBoolBool()[true]);
229 assert('e' === $m->getMapStringString()['e']);
230 assert('f' === $m->getMapInt32Bytes()[1]);
231 assert(TestEnum::ONE === $m->getMapInt32Enum()[1]);
232 assert(36 === $m->getMapInt32Message()[1]->GetA());
233 }
234
235 public static function getGoldenTestMessage()
236 {
237 return hex2bin(
238 "08D6FFFFFF0F" .
239 "10D5FFFFFFFFFFFFFFFF01" .
240 "182A" .
241 "202B" .
242 "2857" .
243 "3059" .
244 "3D2E000000" .
245 "412F00000000000000" .
246 "4DD2FFFFFF" .
247 "51D1FFFFFFFFFFFFFF" .
248 "5D0000C03F" .
249 "619A9999999999F93F" .
250 "6801" .
251 "720161" .
252 "7A0162" .
253 "800101" .
254 "8A01020821" .
255
256 "F801D6FFFFFF0F" .
257 "F801CCFFFFFF0F" .
258 "8002D5FFFFFFFFFFFFFFFF01" .
259 "8002CBFFFFFFFFFFFFFFFF01" .
260 "88022A" .
261 "880234" .
262 "90022B" .
263 "900235" .
264 "980257" .
265 "98026B" .
266 "A00259" .
267 "A0026D" .
268 "AD022E000000" .
269 "AD0238000000" .
270 "B1022F00000000000000" .
271 "B1023900000000000000" .
272 "BD02D2FFFFFF" .
273 "BD02C8FFFFFF" .
274 "C102D1FFFFFFFFFFFFFF" .
275 "C102C7FFFFFFFFFFFFFF" .
276 "CD020000C03F" .
277 "CD0200002040" .
278 "D1029A9999999999F93F" .
279 "D102CDCCCCCCCCCC0440" .
280 "D80201" .
281 "D80200" .
282 "E2020161" .
283 "E2020163" .
284 "EA020162" .
285 "EA020164" .
286 "F00200" .
287 "F00201" .
288 "FA02020822" .
289 "FA02020823" .
290
291 "BA040C08C2FFFFFF0F10C2FFFFFF0F" .
292 "C2041608C1FFFFFFFFFFFFFFFF0110C1FFFFFFFFFFFFFFFF01" .
293 "CA0404083E103E" .
294 "D20404083F103F" .
295 "DA0404087f107F" .
296 "E20406088101108101" .
297 "EA040A0D420000001542000000" .
298 "F20412094300000000000000114300000000000000" .
299 "8A050708011500006040" .
300 "92050B080111CDCCCCCCCCCC0C40" .
301 "9A050408011001" .
302 "A205060a0165120165" .
303 "AA05050801120166" .
304 "B2050408011001" .
305 "Ba0506080112020824"
306 );
307 }
308
309 public static function setTestPackedMessage($m)
310 {
311 $m->getRepeatedInt32()[] = -42;
312 $m->getRepeatedInt32()[] = -52;
313 $m->getRepeatedInt64()[] = -43;
314 $m->getRepeatedInt64()[] = -53;
315 $m->getRepeatedUint32()[] = 42;
316 $m->getRepeatedUint32()[] = 52;
317 $m->getRepeatedUint64()[] = 43;
318 $m->getRepeatedUint64()[] = 53;
319 $m->getRepeatedSint32()[] = -44;
320 $m->getRepeatedSint32()[] = -54;
321 $m->getRepeatedSint64()[] = -45;
322 $m->getRepeatedSint64()[] = -55;
323 $m->getRepeatedFixed32()[] = 46;
324 $m->getRepeatedFixed32()[] = 56;
325 $m->getRepeatedFixed64()[] = 47;
326 $m->getRepeatedFixed64()[] = 57;
327 $m->getRepeatedSfixed32()[] = -46;
328 $m->getRepeatedSfixed32()[] = -56;
329 $m->getRepeatedSfixed64()[] = -47;
330 $m->getRepeatedSfixed64()[] = -57;
331 $m->getRepeatedFloat()[] = 1.5;
332 $m->getRepeatedFloat()[] = 2.5;
333 $m->getRepeatedDouble()[] = 1.6;
334 $m->getRepeatedDouble()[] = 2.6;
335 $m->getRepeatedBool()[] = true;
336 $m->getRepeatedBool()[] = false;
337 $m->getRepeatedEnum()[] = TestEnum::ONE;
338 $m->getRepeatedEnum()[] = TestEnum::ZERO;
339 }
340
341 public static function assertTestPackedMessage($m)
342 {
343 assert(2 === count($m->getRepeatedInt32()));
344 assert(2 === count($m->getRepeatedInt64()));
345 assert(2 === count($m->getRepeatedUint32()));
346 assert(2 === count($m->getRepeatedUint64()));
347 assert(2 === count($m->getRepeatedSint32()));
348 assert(2 === count($m->getRepeatedSint64()));
349 assert(2 === count($m->getRepeatedFixed32()));
350 assert(2 === count($m->getRepeatedFixed64()));
351 assert(2 === count($m->getRepeatedSfixed32()));
352 assert(2 === count($m->getRepeatedSfixed64()));
353 assert(2 === count($m->getRepeatedFloat()));
354 assert(2 === count($m->getRepeatedDouble()));
355 assert(2 === count($m->getRepeatedBool()));
356 assert(2 === count($m->getRepeatedEnum()));
357
358 assert(-42 === $m->getRepeatedInt32()[0]);
359 assert(-52 === $m->getRepeatedInt32()[1]);
360 assert(42 === $m->getRepeatedUint32()[0]);
361 assert(52 === $m->getRepeatedUint32()[1]);
362 assert(-44 === $m->getRepeatedSint32()[0]);
363 assert(-54 === $m->getRepeatedSint32()[1]);
364 assert(46 === $m->getRepeatedFixed32()[0]);
365 assert(56 === $m->getRepeatedFixed32()[1]);
366 assert(-46 === $m->getRepeatedSfixed32()[0]);
367 assert(-56 === $m->getRepeatedSfixed32()[1]);
368 assert(1.5 === $m->getRepeatedFloat()[0]);
369 assert(2.5 === $m->getRepeatedFloat()[1]);
370 assert(1.6 === $m->getRepeatedDouble()[0]);
371 assert(2.6 === $m->getRepeatedDouble()[1]);
372 assert(true === $m->getRepeatedBool()[0]);
373 assert(false === $m->getRepeatedBool()[1]);
374 assert(TestEnum::ONE === $m->getRepeatedEnum()[0]);
375 assert(TestEnum::ZERO === $m->getRepeatedEnum()[1]);
376 if (PHP_INT_SIZE == 4) {
377 assert('-43' === $m->getRepeatedInt64()[0]);
378 assert('-53' === $m->getRepeatedInt64()[1]);
379 assert('43' === $m->getRepeatedUint64()[0]);
380 assert('53' === $m->getRepeatedUint64()[1]);
381 assert('-45' === $m->getRepeatedSint64()[0]);
382 assert('-55' === $m->getRepeatedSint64()[1]);
383 assert('47' === $m->getRepeatedFixed64()[0]);
384 assert('57' === $m->getRepeatedFixed64()[1]);
385 assert('-47' === $m->getRepeatedSfixed64()[0]);
386 assert('-57' === $m->getRepeatedSfixed64()[1]);
387 } else {
388 assert(-43 === $m->getRepeatedInt64()[0]);
389 assert(-53 === $m->getRepeatedInt64()[1]);
390 assert(43 === $m->getRepeatedUint64()[0]);
391 assert(53 === $m->getRepeatedUint64()[1]);
392 assert(-45 === $m->getRepeatedSint64()[0]);
393 assert(-55 === $m->getRepeatedSint64()[1]);
394 assert(47 === $m->getRepeatedFixed64()[0]);
395 assert(57 === $m->getRepeatedFixed64()[1]);
396 assert(-47 === $m->getRepeatedSfixed64()[0]);
397 assert(-57 === $m->getRepeatedSfixed64()[1]);
398 }
399 }
400
401 public static function getGoldenTestPackedMessage()
402 {
403 return hex2bin(
404 "D2050AD6FFFFFF0FCCFFFFFF0F" .
405 "DA0514D5FFFFFFFFFFFFFFFF01CBFFFFFFFFFFFFFFFF01" .
406 "E205022A34" .
407 "EA05022B35" .
408 "F20502576B" .
409 "FA0502596D" .
410 "8206082E00000038000000" .
411 "8A06102F000000000000003900000000000000" .
412 "920608D2FFFFFFC8FFFFFF" .
413 "9A0610D1FFFFFFFFFFFFFFC7FFFFFFFFFFFFFF" .
414 "A206080000C03F00002040" .
415 "AA06109A9999999999F93FCDCCCCCCCCCC0440" .
416 "B206020100" .
417 "BA06020100"
418 );
419 }
420
421 public static function getGoldenTestUnpackedMessage()
422 {
423 return hex2bin(
424 "D005D6FFFFFF0FD005CCFFFFFF0F" .
425 "D805D5FFFFFFFFFFFFFFFF01D805CBFFFFFFFFFFFFFFFF01" .
426 "E0052AE00534" .
427 "E8052BE80535" .
428 "F00557F0056B" .
429 "F80559F8056D" .
430 "85062E000000850638000000" .
431 "89062F0000000000000089063900000000000000" .
432 "9506D2FFFFFF9506C8FFFFFF" .
433 "9906D1FFFFFFFFFFFFFF9906C7FFFFFFFFFFFFFF" .
434 "A5060000C03FA50600002040" .
435 "A9069A9999999999F93FA906CDCCCCCCCCCC0440" .
436 "B00601B00600" .
437 "B80601B80600"
438 );
439 }
440 }
OLDNEW
« no previous file with comments | « third_party/protobuf/php/tests/test_base.php ('k') | third_party/protobuf/php/tests/well_known_test.php » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698