OLD | NEW |
1 // Protocol Buffers - Google's data interchange format | 1 // Protocol Buffers - Google's data interchange format |
2 // Copyright 2008 Google Inc. All rights reserved. | 2 // Copyright 2008 Google Inc. All rights reserved. |
3 // https://developers.google.com/protocol-buffers/ | 3 // http://code.google.com/p/protobuf/ |
4 // | 4 // |
5 // Redistribution and use in source and binary forms, with or without | 5 // Redistribution and use in source and binary forms, with or without |
6 // modification, are permitted provided that the following conditions are | 6 // modification, are permitted provided that the following conditions are |
7 // met: | 7 // met: |
8 // | 8 // |
9 // * Redistributions of source code must retain the above copyright | 9 // * Redistributions of source code must retain the above copyright |
10 // notice, this list of conditions and the following disclaimer. | 10 // notice, this list of conditions and the following disclaimer. |
11 // * Redistributions in binary form must reproduce the above | 11 // * Redistributions in binary form must reproduce the above |
12 // copyright notice, this list of conditions and the following disclaimer | 12 // copyright notice, this list of conditions and the following disclaimer |
13 // in the documentation and/or other materials provided with the | 13 // in the documentation and/or other materials provided with the |
14 // distribution. | 14 // distribution. |
15 // * Neither the name of Google Inc. nor the names of its | 15 // * Neither the name of Google Inc. nor the names of its |
16 // contributors may be used to endorse or promote products derived from | 16 // contributors may be used to endorse or promote products derived from |
17 // this software without specific prior written permission. | 17 // this software without specific prior written permission. |
18 // | 18 // |
19 // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS | 19 // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
20 // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT | 20 // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
21 // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR | 21 // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
22 // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT | 22 // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
23 // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, | 23 // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
24 // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT | 24 // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
25 // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | 25 // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
26 // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY | 26 // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
27 // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | 27 // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
28 // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | 28 // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
29 // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 29 // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
30 | 30 |
31 package com.google.protobuf; | 31 package com.google.protobuf.test; |
| 32 import com.google.protobuf.*; |
32 | 33 |
33 import static com.google.protobuf.UnittestLite.defaultBoolExtensionLite; | 34 import protobuf_unittest.UnittestProto; |
34 import static com.google.protobuf.UnittestLite.defaultBytesExtensionLite; | 35 |
35 import static com.google.protobuf.UnittestLite.defaultCordExtensionLite; | |
36 import static com.google.protobuf.UnittestLite.defaultDoubleExtensionLite; | |
37 import static com.google.protobuf.UnittestLite.defaultFixed32ExtensionLite; | |
38 import static com.google.protobuf.UnittestLite.defaultFixed64ExtensionLite; | |
39 import static com.google.protobuf.UnittestLite.defaultFloatExtensionLite; | |
40 import static com.google.protobuf.UnittestLite.defaultForeignEnumExtensionLite; | |
41 import static com.google.protobuf.UnittestLite.defaultImportEnumExtensionLite; | |
42 import static com.google.protobuf.UnittestLite.defaultInt32ExtensionLite; | |
43 import static com.google.protobuf.UnittestLite.defaultInt64ExtensionLite; | |
44 import static com.google.protobuf.UnittestLite.defaultNestedEnumExtensionLite; | |
45 import static com.google.protobuf.UnittestLite.defaultSfixed32ExtensionLite; | |
46 import static com.google.protobuf.UnittestLite.defaultSfixed64ExtensionLite; | |
47 import static com.google.protobuf.UnittestLite.defaultSint32ExtensionLite; | |
48 import static com.google.protobuf.UnittestLite.defaultSint64ExtensionLite; | |
49 import static com.google.protobuf.UnittestLite.defaultStringExtensionLite; | |
50 import static com.google.protobuf.UnittestLite.defaultStringPieceExtensionLite; | |
51 import static com.google.protobuf.UnittestLite.defaultUint32ExtensionLite; | |
52 import static com.google.protobuf.UnittestLite.defaultUint64ExtensionLite; | |
53 import static com.google.protobuf.UnittestLite.oneofBytesExtensionLite; | |
54 import static com.google.protobuf.UnittestLite.oneofNestedMessageExtensionLite; | |
55 import static com.google.protobuf.UnittestLite.oneofStringExtensionLite; | |
56 import static com.google.protobuf.UnittestLite.oneofUint32ExtensionLite; | |
57 import static com.google.protobuf.UnittestLite.optionalBoolExtensionLite; | |
58 import static com.google.protobuf.UnittestLite.optionalBytesExtensionLite; | |
59 import static com.google.protobuf.UnittestLite.optionalCordExtensionLite; | |
60 import static com.google.protobuf.UnittestLite.optionalDoubleExtensionLite; | |
61 import static com.google.protobuf.UnittestLite.optionalFixed32ExtensionLite; | |
62 import static com.google.protobuf.UnittestLite.optionalFixed64ExtensionLite; | |
63 import static com.google.protobuf.UnittestLite.optionalFloatExtensionLite; | |
64 import static com.google.protobuf.UnittestLite.optionalForeignEnumExtensionLite; | |
65 import static com.google.protobuf.UnittestLite.optionalForeignMessageExtensionLi
te; | |
66 import static com.google.protobuf.UnittestLite.optionalGroupExtensionLite; | |
67 import static com.google.protobuf.UnittestLite.optionalImportEnumExtensionLite; | |
68 import static com.google.protobuf.UnittestLite.optionalImportMessageExtensionLit
e; | |
69 import static com.google.protobuf.UnittestLite.optionalInt32ExtensionLite; | |
70 import static com.google.protobuf.UnittestLite.optionalInt64ExtensionLite; | |
71 import static com.google.protobuf.UnittestLite.optionalLazyMessageExtensionLite; | |
72 import static com.google.protobuf.UnittestLite.optionalNestedEnumExtensionLite; | |
73 import static com.google.protobuf.UnittestLite.optionalNestedMessageExtensionLit
e; | |
74 import static com.google.protobuf.UnittestLite.optionalPublicImportMessageExtens
ionLite; | |
75 import static com.google.protobuf.UnittestLite.optionalSfixed32ExtensionLite; | |
76 import static com.google.protobuf.UnittestLite.optionalSfixed64ExtensionLite; | |
77 import static com.google.protobuf.UnittestLite.optionalSint32ExtensionLite; | |
78 import static com.google.protobuf.UnittestLite.optionalSint64ExtensionLite; | |
79 import static com.google.protobuf.UnittestLite.optionalStringExtensionLite; | |
80 import static com.google.protobuf.UnittestLite.optionalStringPieceExtensionLite; | |
81 import static com.google.protobuf.UnittestLite.optionalUint32ExtensionLite; | |
82 import static com.google.protobuf.UnittestLite.optionalUint64ExtensionLite; | |
83 import static com.google.protobuf.UnittestLite.packedBoolExtensionLite; | |
84 import static com.google.protobuf.UnittestLite.packedDoubleExtensionLite; | |
85 import static com.google.protobuf.UnittestLite.packedEnumExtensionLite; | |
86 import static com.google.protobuf.UnittestLite.packedFixed32ExtensionLite; | |
87 import static com.google.protobuf.UnittestLite.packedFixed64ExtensionLite; | |
88 import static com.google.protobuf.UnittestLite.packedFloatExtensionLite; | |
89 import static com.google.protobuf.UnittestLite.packedInt32ExtensionLite; | |
90 import static com.google.protobuf.UnittestLite.packedInt64ExtensionLite; | |
91 import static com.google.protobuf.UnittestLite.packedSfixed32ExtensionLite; | |
92 import static com.google.protobuf.UnittestLite.packedSfixed64ExtensionLite; | |
93 import static com.google.protobuf.UnittestLite.packedSint32ExtensionLite; | |
94 import static com.google.protobuf.UnittestLite.packedSint64ExtensionLite; | |
95 import static com.google.protobuf.UnittestLite.packedUint32ExtensionLite; | |
96 import static com.google.protobuf.UnittestLite.packedUint64ExtensionLite; | |
97 import static com.google.protobuf.UnittestLite.repeatedBoolExtensionLite; | |
98 import static com.google.protobuf.UnittestLite.repeatedBytesExtensionLite; | |
99 import static com.google.protobuf.UnittestLite.repeatedCordExtensionLite; | |
100 import static com.google.protobuf.UnittestLite.repeatedDoubleExtensionLite; | |
101 import static com.google.protobuf.UnittestLite.repeatedFixed32ExtensionLite; | |
102 import static com.google.protobuf.UnittestLite.repeatedFixed64ExtensionLite; | |
103 import static com.google.protobuf.UnittestLite.repeatedFloatExtensionLite; | |
104 import static com.google.protobuf.UnittestLite.repeatedForeignEnumExtensionLite; | |
105 import static com.google.protobuf.UnittestLite.repeatedForeignMessageExtensionLi
te; | |
106 import static com.google.protobuf.UnittestLite.repeatedGroupExtensionLite; | |
107 import static com.google.protobuf.UnittestLite.repeatedImportEnumExtensionLite; | |
108 import static com.google.protobuf.UnittestLite.repeatedImportMessageExtensionLit
e; | |
109 import static com.google.protobuf.UnittestLite.repeatedInt32ExtensionLite; | |
110 import static com.google.protobuf.UnittestLite.repeatedInt64ExtensionLite; | |
111 import static com.google.protobuf.UnittestLite.repeatedLazyMessageExtensionLite; | |
112 import static com.google.protobuf.UnittestLite.repeatedNestedEnumExtensionLite; | |
113 import static com.google.protobuf.UnittestLite.repeatedNestedMessageExtensionLit
e; | |
114 import static com.google.protobuf.UnittestLite.repeatedSfixed32ExtensionLite; | |
115 import static com.google.protobuf.UnittestLite.repeatedSfixed64ExtensionLite; | |
116 import static com.google.protobuf.UnittestLite.repeatedSint32ExtensionLite; | |
117 import static com.google.protobuf.UnittestLite.repeatedSint64ExtensionLite; | |
118 import static com.google.protobuf.UnittestLite.repeatedStringExtensionLite; | |
119 import static com.google.protobuf.UnittestLite.repeatedStringPieceExtensionLite; | |
120 import static com.google.protobuf.UnittestLite.repeatedUint32ExtensionLite; | |
121 import static com.google.protobuf.UnittestLite.repeatedUint64ExtensionLite; | |
122 import static protobuf_unittest.UnittestProto.OptionalGroup_extension; | |
123 import static protobuf_unittest.UnittestProto.RepeatedGroup_extension; | |
124 import static protobuf_unittest.UnittestProto.defaultBoolExtension; | |
125 import static protobuf_unittest.UnittestProto.defaultBytesExtension; | |
126 import static protobuf_unittest.UnittestProto.defaultCordExtension; | |
127 import static protobuf_unittest.UnittestProto.defaultDoubleExtension; | |
128 import static protobuf_unittest.UnittestProto.defaultFixed32Extension; | |
129 import static protobuf_unittest.UnittestProto.defaultFixed64Extension; | |
130 import static protobuf_unittest.UnittestProto.defaultFloatExtension; | |
131 import static protobuf_unittest.UnittestProto.defaultForeignEnumExtension; | |
132 import static protobuf_unittest.UnittestProto.defaultImportEnumExtension; | |
133 // The static imports are to avoid 100+ char lines. The following is roughly eq
uivalent to | 36 // The static imports are to avoid 100+ char lines. The following is roughly eq
uivalent to |
134 // import static protobuf_unittest.UnittestProto.*; | 37 // import static protobuf_unittest.UnittestProto.*; |
135 import static protobuf_unittest.UnittestProto.defaultInt32Extension; | 38 import static protobuf_unittest.UnittestProto.defaultInt32Extension; |
136 import static protobuf_unittest.UnittestProto.defaultInt64Extension; | 39 import static protobuf_unittest.UnittestProto.defaultInt64Extension; |
137 import static protobuf_unittest.UnittestProto.defaultNestedEnumExtension; | 40 import static protobuf_unittest.UnittestProto.defaultUint32Extension; |
| 41 import static protobuf_unittest.UnittestProto.defaultUint64Extension; |
| 42 import static protobuf_unittest.UnittestProto.defaultSint32Extension; |
| 43 import static protobuf_unittest.UnittestProto.defaultSint64Extension; |
| 44 import static protobuf_unittest.UnittestProto.defaultFixed32Extension; |
| 45 import static protobuf_unittest.UnittestProto.defaultFixed64Extension; |
138 import static protobuf_unittest.UnittestProto.defaultSfixed32Extension; | 46 import static protobuf_unittest.UnittestProto.defaultSfixed32Extension; |
139 import static protobuf_unittest.UnittestProto.defaultSfixed64Extension; | 47 import static protobuf_unittest.UnittestProto.defaultSfixed64Extension; |
140 import static protobuf_unittest.UnittestProto.defaultSint32Extension; | 48 import static protobuf_unittest.UnittestProto.defaultFloatExtension; |
141 import static protobuf_unittest.UnittestProto.defaultSint64Extension; | 49 import static protobuf_unittest.UnittestProto.defaultDoubleExtension; |
| 50 import static protobuf_unittest.UnittestProto.defaultBoolExtension; |
142 import static protobuf_unittest.UnittestProto.defaultStringExtension; | 51 import static protobuf_unittest.UnittestProto.defaultStringExtension; |
| 52 import static protobuf_unittest.UnittestProto.defaultBytesExtension; |
| 53 import static protobuf_unittest.UnittestProto.defaultNestedEnumExtension; |
| 54 import static protobuf_unittest.UnittestProto.defaultForeignEnumExtension; |
| 55 import static protobuf_unittest.UnittestProto.defaultImportEnumExtension; |
143 import static protobuf_unittest.UnittestProto.defaultStringPieceExtension; | 56 import static protobuf_unittest.UnittestProto.defaultStringPieceExtension; |
144 import static protobuf_unittest.UnittestProto.defaultUint32Extension; | 57 import static protobuf_unittest.UnittestProto.defaultCordExtension; |
145 import static protobuf_unittest.UnittestProto.defaultUint64Extension; | 58 |
146 import static protobuf_unittest.UnittestProto.oneofBytesExtension; | 59 import static protobuf_unittest.UnittestProto.optionalInt32Extension; |
147 import static protobuf_unittest.UnittestProto.oneofNestedMessageExtension; | 60 import static protobuf_unittest.UnittestProto.optionalInt64Extension; |
148 import static protobuf_unittest.UnittestProto.oneofStringExtension; | 61 import static protobuf_unittest.UnittestProto.optionalUint32Extension; |
149 import static protobuf_unittest.UnittestProto.oneofUint32Extension; | 62 import static protobuf_unittest.UnittestProto.optionalUint64Extension; |
150 import static protobuf_unittest.UnittestProto.optionalBoolExtension; | 63 import static protobuf_unittest.UnittestProto.optionalSint32Extension; |
151 import static protobuf_unittest.UnittestProto.optionalBytesExtension; | 64 import static protobuf_unittest.UnittestProto.optionalSint64Extension; |
152 import static protobuf_unittest.UnittestProto.optionalCordExtension; | |
153 import static protobuf_unittest.UnittestProto.optionalDoubleExtension; | |
154 import static protobuf_unittest.UnittestProto.optionalFixed32Extension; | 65 import static protobuf_unittest.UnittestProto.optionalFixed32Extension; |
155 import static protobuf_unittest.UnittestProto.optionalFixed64Extension; | 66 import static protobuf_unittest.UnittestProto.optionalFixed64Extension; |
| 67 import static protobuf_unittest.UnittestProto.optionalSfixed32Extension; |
| 68 import static protobuf_unittest.UnittestProto.optionalSfixed64Extension; |
156 import static protobuf_unittest.UnittestProto.optionalFloatExtension; | 69 import static protobuf_unittest.UnittestProto.optionalFloatExtension; |
| 70 import static protobuf_unittest.UnittestProto.optionalDoubleExtension; |
| 71 import static protobuf_unittest.UnittestProto.optionalBoolExtension; |
| 72 import static protobuf_unittest.UnittestProto.optionalStringExtension; |
| 73 import static protobuf_unittest.UnittestProto.optionalBytesExtension; |
| 74 import static protobuf_unittest.UnittestProto.optionalGroupExtension; |
| 75 import static protobuf_unittest.UnittestProto.optionalCordExtension; |
157 import static protobuf_unittest.UnittestProto.optionalForeignEnumExtension; | 76 import static protobuf_unittest.UnittestProto.optionalForeignEnumExtension; |
158 import static protobuf_unittest.UnittestProto.optionalForeignMessageExtension; | 77 import static protobuf_unittest.UnittestProto.optionalForeignMessageExtension; |
159 import static protobuf_unittest.UnittestProto.optionalGroupExtension; | |
160 import static protobuf_unittest.UnittestProto.optionalImportEnumExtension; | 78 import static protobuf_unittest.UnittestProto.optionalImportEnumExtension; |
161 import static protobuf_unittest.UnittestProto.optionalImportMessageExtension; | 79 import static protobuf_unittest.UnittestProto.optionalImportMessageExtension; |
162 import static protobuf_unittest.UnittestProto.optionalInt32Extension; | |
163 import static protobuf_unittest.UnittestProto.optionalInt64Extension; | |
164 import static protobuf_unittest.UnittestProto.optionalLazyMessageExtension; | |
165 import static protobuf_unittest.UnittestProto.optionalNestedEnumExtension; | 80 import static protobuf_unittest.UnittestProto.optionalNestedEnumExtension; |
166 import static protobuf_unittest.UnittestProto.optionalNestedMessageExtension; | 81 import static protobuf_unittest.UnittestProto.optionalNestedMessageExtension; |
167 import static protobuf_unittest.UnittestProto.optionalPublicImportMessageExtensi
on; | 82 import static protobuf_unittest.UnittestProto.optionalPublicImportMessageExtensi
on; |
168 import static protobuf_unittest.UnittestProto.optionalSfixed32Extension; | 83 import static protobuf_unittest.UnittestProto.optionalLazyMessageExtension; |
169 import static protobuf_unittest.UnittestProto.optionalSfixed64Extension; | |
170 import static protobuf_unittest.UnittestProto.optionalSint32Extension; | |
171 import static protobuf_unittest.UnittestProto.optionalSint64Extension; | |
172 import static protobuf_unittest.UnittestProto.optionalStringExtension; | |
173 import static protobuf_unittest.UnittestProto.optionalStringPieceExtension; | 84 import static protobuf_unittest.UnittestProto.optionalStringPieceExtension; |
174 import static protobuf_unittest.UnittestProto.optionalUint32Extension; | 85 |
175 import static protobuf_unittest.UnittestProto.optionalUint64Extension; | 86 import static protobuf_unittest.UnittestProto.repeatedInt32Extension; |
176 import static protobuf_unittest.UnittestProto.packedBoolExtension; | 87 import static protobuf_unittest.UnittestProto.repeatedInt64Extension; |
177 import static protobuf_unittest.UnittestProto.packedDoubleExtension; | 88 import static protobuf_unittest.UnittestProto.repeatedUint32Extension; |
178 import static protobuf_unittest.UnittestProto.packedEnumExtension; | 89 import static protobuf_unittest.UnittestProto.repeatedUint64Extension; |
| 90 import static protobuf_unittest.UnittestProto.repeatedSint32Extension; |
| 91 import static protobuf_unittest.UnittestProto.repeatedSint64Extension; |
| 92 import static protobuf_unittest.UnittestProto.repeatedFixed32Extension; |
| 93 import static protobuf_unittest.UnittestProto.repeatedFixed64Extension; |
| 94 import static protobuf_unittest.UnittestProto.repeatedSfixed32Extension; |
| 95 import static protobuf_unittest.UnittestProto.repeatedSfixed64Extension; |
| 96 import static protobuf_unittest.UnittestProto.repeatedFloatExtension; |
| 97 import static protobuf_unittest.UnittestProto.repeatedDoubleExtension; |
| 98 import static protobuf_unittest.UnittestProto.repeatedBoolExtension; |
| 99 import static protobuf_unittest.UnittestProto.repeatedStringExtension; |
| 100 import static protobuf_unittest.UnittestProto.repeatedBytesExtension; |
| 101 import static protobuf_unittest.UnittestProto.repeatedGroupExtension; |
| 102 import static protobuf_unittest.UnittestProto.repeatedNestedMessageExtension; |
| 103 import static protobuf_unittest.UnittestProto.repeatedForeignMessageExtension; |
| 104 import static protobuf_unittest.UnittestProto.repeatedImportMessageExtension; |
| 105 import static protobuf_unittest.UnittestProto.repeatedLazyMessageExtension; |
| 106 import static protobuf_unittest.UnittestProto.repeatedNestedEnumExtension; |
| 107 import static protobuf_unittest.UnittestProto.repeatedForeignEnumExtension; |
| 108 import static protobuf_unittest.UnittestProto.repeatedImportEnumExtension; |
| 109 import static protobuf_unittest.UnittestProto.repeatedStringPieceExtension; |
| 110 import static protobuf_unittest.UnittestProto.repeatedCordExtension; |
| 111 |
| 112 import static protobuf_unittest.UnittestProto.OptionalGroup_extension; |
| 113 import static protobuf_unittest.UnittestProto.RepeatedGroup_extension; |
| 114 |
| 115 import static protobuf_unittest.UnittestProto.packedInt32Extension; |
| 116 import static protobuf_unittest.UnittestProto.packedInt64Extension; |
| 117 import static protobuf_unittest.UnittestProto.packedUint32Extension; |
| 118 import static protobuf_unittest.UnittestProto.packedUint64Extension; |
| 119 import static protobuf_unittest.UnittestProto.packedSint32Extension; |
| 120 import static protobuf_unittest.UnittestProto.packedSint64Extension; |
179 import static protobuf_unittest.UnittestProto.packedFixed32Extension; | 121 import static protobuf_unittest.UnittestProto.packedFixed32Extension; |
180 import static protobuf_unittest.UnittestProto.packedFixed64Extension; | 122 import static protobuf_unittest.UnittestProto.packedFixed64Extension; |
181 import static protobuf_unittest.UnittestProto.packedFloatExtension; | |
182 import static protobuf_unittest.UnittestProto.packedInt32Extension; | |
183 import static protobuf_unittest.UnittestProto.packedInt64Extension; | |
184 import static protobuf_unittest.UnittestProto.packedSfixed32Extension; | 123 import static protobuf_unittest.UnittestProto.packedSfixed32Extension; |
185 import static protobuf_unittest.UnittestProto.packedSfixed64Extension; | 124 import static protobuf_unittest.UnittestProto.packedSfixed64Extension; |
186 import static protobuf_unittest.UnittestProto.packedSint32Extension; | 125 import static protobuf_unittest.UnittestProto.packedFloatExtension; |
187 import static protobuf_unittest.UnittestProto.packedSint64Extension; | 126 import static protobuf_unittest.UnittestProto.packedDoubleExtension; |
188 import static protobuf_unittest.UnittestProto.packedUint32Extension; | 127 import static protobuf_unittest.UnittestProto.packedBoolExtension; |
189 import static protobuf_unittest.UnittestProto.packedUint64Extension; | 128 import static protobuf_unittest.UnittestProto.packedEnumExtension; |
190 import static protobuf_unittest.UnittestProto.repeatedBoolExtension; | |
191 import static protobuf_unittest.UnittestProto.repeatedBytesExtension; | |
192 import static protobuf_unittest.UnittestProto.repeatedCordExtension; | |
193 import static protobuf_unittest.UnittestProto.repeatedDoubleExtension; | |
194 import static protobuf_unittest.UnittestProto.repeatedFixed32Extension; | |
195 import static protobuf_unittest.UnittestProto.repeatedFixed64Extension; | |
196 import static protobuf_unittest.UnittestProto.repeatedFloatExtension; | |
197 import static protobuf_unittest.UnittestProto.repeatedForeignEnumExtension; | |
198 import static protobuf_unittest.UnittestProto.repeatedForeignMessageExtension; | |
199 import static protobuf_unittest.UnittestProto.repeatedGroupExtension; | |
200 import static protobuf_unittest.UnittestProto.repeatedImportEnumExtension; | |
201 import static protobuf_unittest.UnittestProto.repeatedImportMessageExtension; | |
202 import static protobuf_unittest.UnittestProto.repeatedInt32Extension; | |
203 import static protobuf_unittest.UnittestProto.repeatedInt64Extension; | |
204 import static protobuf_unittest.UnittestProto.repeatedLazyMessageExtension; | |
205 import static protobuf_unittest.UnittestProto.repeatedNestedEnumExtension; | |
206 import static protobuf_unittest.UnittestProto.repeatedNestedMessageExtension; | |
207 import static protobuf_unittest.UnittestProto.repeatedSfixed32Extension; | |
208 import static protobuf_unittest.UnittestProto.repeatedSfixed64Extension; | |
209 import static protobuf_unittest.UnittestProto.repeatedSint32Extension; | |
210 import static protobuf_unittest.UnittestProto.repeatedSint64Extension; | |
211 import static protobuf_unittest.UnittestProto.repeatedStringExtension; | |
212 import static protobuf_unittest.UnittestProto.repeatedStringPieceExtension; | |
213 import static protobuf_unittest.UnittestProto.repeatedUint32Extension; | |
214 import static protobuf_unittest.UnittestProto.repeatedUint64Extension; | |
215 | 129 |
216 import com.google.protobuf.UnittestImportLite.ImportEnumLite; | 130 |
217 import com.google.protobuf.UnittestLite.ForeignEnumLite; | |
218 import com.google.protobuf.UnittestLite.TestAllExtensionsLiteOrBuilder; | |
219 import com.google.protobuf.UnittestLite.TestAllTypesLite; | |
220 import com.google.protobuf.UnittestLite.TestPackedExtensionsLite; | |
221 import com.google.protobuf.test.UnittestImport.ImportEnum; | |
222 import com.google.protobuf.test.UnittestImport.ImportMessage; | |
223 import com.google.protobuf.test.UnittestImportPublic.PublicImportMessage; | |
224 import protobuf_unittest.UnittestProto; | |
225 import protobuf_unittest.UnittestProto.ForeignEnum; | |
226 import protobuf_unittest.UnittestProto.ForeignMessage; | |
227 import protobuf_unittest.UnittestProto.TestAllExtensions; | 131 import protobuf_unittest.UnittestProto.TestAllExtensions; |
228 import protobuf_unittest.UnittestProto.TestAllExtensionsOrBuilder; | 132 import protobuf_unittest.UnittestProto.TestAllExtensionsOrBuilder; |
229 import protobuf_unittest.UnittestProto.TestAllTypes; | 133 import protobuf_unittest.UnittestProto.TestAllTypes; |
230 import protobuf_unittest.UnittestProto.TestAllTypesOrBuilder; | 134 import protobuf_unittest.UnittestProto.TestAllTypesOrBuilder; |
231 import protobuf_unittest.UnittestProto.TestOneof2; | |
232 import protobuf_unittest.UnittestProto.TestPackedExtensions; | 135 import protobuf_unittest.UnittestProto.TestPackedExtensions; |
233 import protobuf_unittest.UnittestProto.TestPackedTypes; | 136 import protobuf_unittest.UnittestProto.TestPackedTypes; |
234 import protobuf_unittest.UnittestProto.TestUnpackedTypes; | 137 import protobuf_unittest.UnittestProto.TestUnpackedTypes; |
| 138 import protobuf_unittest.UnittestProto.ForeignMessage; |
| 139 import protobuf_unittest.UnittestProto.ForeignEnum; |
| 140 import com.google.protobuf.test.UnittestImport.ImportEnum; |
| 141 import com.google.protobuf.test.UnittestImport.ImportMessage; |
| 142 import com.google.protobuf.test.UnittestImportPublic.PublicImportMessage; |
235 | 143 |
236 import junit.framework.Assert; | 144 import junit.framework.Assert; |
237 | 145 |
238 import java.io.File; | 146 import java.io.File; |
239 import java.io.IOException; | 147 import java.io.IOException; |
240 import java.io.RandomAccessFile; | 148 import java.io.RandomAccessFile; |
241 | 149 |
242 /** | 150 /** |
243 * Contains methods for setting all fields of {@code TestAllTypes} to | 151 * Contains methods for setting all fields of {@code TestAllTypes} to |
244 * some values as well as checking that all the fields are set to those values. | 152 * some values as well as checking that all the fields are set to those values. |
245 * These are useful for testing various protocol message features, e.g. | 153 * These are useful for testing various protocol message features, e.g. |
246 * set all fields of a message, serialize it, parse it, and check that all | 154 * set all fields of a message, serialize it, parse it, and check that all |
247 * fields are set. | 155 * fields are set. |
248 * | 156 * |
249 * <p>This code is not to be used outside of {@code com.google.protobuf} and | 157 * <p>This code is not to be used outside of {@code com.google.protobuf} and |
250 * subpackages. | 158 * subpackages. |
251 * | 159 * |
252 * @author kenton@google.com Kenton Varda | 160 * @author kenton@google.com Kenton Varda |
253 */ | 161 */ |
254 public final class TestUtil { | 162 public final class TestUtil { |
255 private TestUtil() {} | 163 private TestUtil() {} |
256 | 164 |
257 /** Helper to convert a String to ByteString. */ | 165 /** Helper to convert a String to ByteString. */ |
258 static ByteString toBytes(String str) { | 166 static ByteString toBytes(String str) { |
259 return ByteString.copyFrom(str.getBytes(Internal.UTF_8)); | 167 try { |
| 168 return ByteString.copyFrom(str.getBytes("UTF-8")); |
| 169 } catch(java.io.UnsupportedEncodingException e) { |
| 170 throw new RuntimeException("UTF-8 not supported.", e); |
| 171 } |
260 } | 172 } |
261 | 173 |
262 /** | 174 /** |
263 * Get a {@code TestAllTypes} with all fields set as they would be by | 175 * Get a {@code TestAllTypes} with all fields set as they would be by |
264 * {@link #setAllFields(TestAllTypes.Builder)}. | 176 * {@link #setAllFields(TestAllTypes.Builder)}. |
265 */ | 177 */ |
266 public static TestAllTypes getAllSet() { | 178 public static TestAllTypes getAllSet() { |
267 TestAllTypes.Builder builder = TestAllTypes.newBuilder(); | 179 TestAllTypes.Builder builder = TestAllTypes.newBuilder(); |
268 setAllFields(builder); | 180 setAllFields(builder); |
269 return builder.build(); | 181 return builder.build(); |
(...skipping 166 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
436 message.setDefaultBool (false); | 348 message.setDefaultBool (false); |
437 message.setDefaultString ("415"); | 349 message.setDefaultString ("415"); |
438 message.setDefaultBytes (toBytes("416")); | 350 message.setDefaultBytes (toBytes("416")); |
439 | 351 |
440 message.setDefaultNestedEnum (TestAllTypes.NestedEnum.FOO); | 352 message.setDefaultNestedEnum (TestAllTypes.NestedEnum.FOO); |
441 message.setDefaultForeignEnum(ForeignEnum.FOREIGN_FOO); | 353 message.setDefaultForeignEnum(ForeignEnum.FOREIGN_FOO); |
442 message.setDefaultImportEnum (ImportEnum.IMPORT_FOO); | 354 message.setDefaultImportEnum (ImportEnum.IMPORT_FOO); |
443 | 355 |
444 message.setDefaultStringPiece("424"); | 356 message.setDefaultStringPiece("424"); |
445 message.setDefaultCord("425"); | 357 message.setDefaultCord("425"); |
446 | |
447 message.setOneofUint32(601); | |
448 message.setOneofNestedMessage( | |
449 TestAllTypes.NestedMessage.newBuilder().setBb(602).build()); | |
450 message.setOneofString("603"); | |
451 message.setOneofBytes(toBytes("604")); | |
452 } | 358 } |
453 | 359 |
454 // ------------------------------------------------------------------- | 360 // ------------------------------------------------------------------- |
455 | 361 |
456 /** | 362 /** |
457 * Modify the repeated fields of {@code message} to contain the values | 363 * Modify the repeated fields of {@code message} to contain the values |
458 * expected by {@code assertRepeatedFieldsModified()}. | 364 * expected by {@code assertRepeatedFieldsModified()}. |
459 */ | 365 */ |
460 public static void modifyRepeatedFields(TestAllTypes.Builder message) { | 366 public static void modifyRepeatedFields(TestAllTypes.Builder message) { |
461 message.setRepeatedInt32 (1, 501); | 367 message.setRepeatedInt32 (1, 501); |
(...skipping 229 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
691 Assert.assertEquals(false, message.getDefaultBool ()); | 597 Assert.assertEquals(false, message.getDefaultBool ()); |
692 Assert.assertEquals("415", message.getDefaultString ()); | 598 Assert.assertEquals("415", message.getDefaultString ()); |
693 Assert.assertEquals(toBytes("416"), message.getDefaultBytes()); | 599 Assert.assertEquals(toBytes("416"), message.getDefaultBytes()); |
694 | 600 |
695 Assert.assertEquals(TestAllTypes.NestedEnum.FOO, message.getDefaultNestedEnu
m ()); | 601 Assert.assertEquals(TestAllTypes.NestedEnum.FOO, message.getDefaultNestedEnu
m ()); |
696 Assert.assertEquals(ForeignEnum.FOREIGN_FOO, message.getDefaultForeignEnum()
); | 602 Assert.assertEquals(ForeignEnum.FOREIGN_FOO, message.getDefaultForeignEnum()
); |
697 Assert.assertEquals(ImportEnum.IMPORT_FOO, message.getDefaultImportEnum()); | 603 Assert.assertEquals(ImportEnum.IMPORT_FOO, message.getDefaultImportEnum()); |
698 | 604 |
699 Assert.assertEquals("424", message.getDefaultStringPiece()); | 605 Assert.assertEquals("424", message.getDefaultStringPiece()); |
700 Assert.assertEquals("425", message.getDefaultCord()); | 606 Assert.assertEquals("425", message.getDefaultCord()); |
701 | |
702 Assert.assertEquals(TestAllTypes.OneofFieldCase.ONEOF_BYTES, message.getOneo
fFieldCase()); | |
703 Assert.assertFalse(message.hasOneofUint32()); | |
704 Assert.assertFalse(message.hasOneofNestedMessage()); | |
705 Assert.assertFalse(message.hasOneofString()); | |
706 Assert.assertTrue(message.hasOneofBytes()); | |
707 | |
708 Assert.assertEquals(toBytes("604"), message.getOneofBytes()); | |
709 } | 607 } |
710 | 608 |
711 // ------------------------------------------------------------------- | 609 // ------------------------------------------------------------------- |
712 /** | 610 /** |
713 * Assert (using {@code junit.framework.Assert}} that all fields of | 611 * Assert (using {@code junit.framework.Assert}} that all fields of |
714 * {@code message} are cleared, and that getting the fields returns their | 612 * {@code message} are cleared, and that getting the fields returns their |
715 * default values. | 613 * default values. |
716 */ | 614 */ |
717 public static void assertClear(TestAllTypesOrBuilder message) { | 615 public static void assertClear(TestAllTypesOrBuilder message) { |
718 // hasBlah() should initially be false for all optional fields. | 616 // hasBlah() should initially be false for all optional fields. |
(...skipping 134 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
853 Assert.assertEquals(true , message.getDefaultBool ()); | 751 Assert.assertEquals(true , message.getDefaultBool ()); |
854 Assert.assertEquals("hello", message.getDefaultString ()); | 752 Assert.assertEquals("hello", message.getDefaultString ()); |
855 Assert.assertEquals(toBytes("world"), message.getDefaultBytes()); | 753 Assert.assertEquals(toBytes("world"), message.getDefaultBytes()); |
856 | 754 |
857 Assert.assertEquals(TestAllTypes.NestedEnum.BAR, message.getDefaultNestedEnu
m ()); | 755 Assert.assertEquals(TestAllTypes.NestedEnum.BAR, message.getDefaultNestedEnu
m ()); |
858 Assert.assertEquals(ForeignEnum.FOREIGN_BAR, message.getDefaultForeignEnum()
); | 756 Assert.assertEquals(ForeignEnum.FOREIGN_BAR, message.getDefaultForeignEnum()
); |
859 Assert.assertEquals(ImportEnum.IMPORT_BAR, message.getDefaultImportEnum()); | 757 Assert.assertEquals(ImportEnum.IMPORT_BAR, message.getDefaultImportEnum()); |
860 | 758 |
861 Assert.assertEquals("abc", message.getDefaultStringPiece()); | 759 Assert.assertEquals("abc", message.getDefaultStringPiece()); |
862 Assert.assertEquals("123", message.getDefaultCord()); | 760 Assert.assertEquals("123", message.getDefaultCord()); |
863 | |
864 Assert.assertFalse(message.hasOneofUint32()); | |
865 Assert.assertFalse(message.hasOneofNestedMessage()); | |
866 Assert.assertFalse(message.hasOneofString()); | |
867 Assert.assertFalse(message.hasOneofBytes()); | |
868 } | 761 } |
869 | 762 |
870 // ------------------------------------------------------------------- | 763 // ------------------------------------------------------------------- |
871 | 764 |
872 /** | 765 /** |
873 * Assert (using {@code junit.framework.Assert}} that all fields of | 766 * Assert (using {@code junit.framework.Assert}} that all fields of |
874 * {@code message} are set to the values assigned by {@code setAllFields} | 767 * {@code message} are set to the values assigned by {@code setAllFields} |
875 * followed by {@code modifyRepeatedFields}. | 768 * followed by {@code modifyRepeatedFields}. |
876 */ | 769 */ |
877 public static void assertRepeatedFieldsModified( | 770 public static void assertRepeatedFieldsModified( |
(...skipping 288 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1166 private static void assertEqualsExactType(TestAllTypes.NestedEnum a, | 1059 private static void assertEqualsExactType(TestAllTypes.NestedEnum a, |
1167 TestAllTypes.NestedEnum b) { | 1060 TestAllTypes.NestedEnum b) { |
1168 Assert.assertEquals(a, b); | 1061 Assert.assertEquals(a, b); |
1169 } | 1062 } |
1170 private static void assertEqualsExactType(ForeignEnum a, ForeignEnum b) { | 1063 private static void assertEqualsExactType(ForeignEnum a, ForeignEnum b) { |
1171 Assert.assertEquals(a, b); | 1064 Assert.assertEquals(a, b); |
1172 } | 1065 } |
1173 private static void assertEqualsExactType(ImportEnum a, ImportEnum b) { | 1066 private static void assertEqualsExactType(ImportEnum a, ImportEnum b) { |
1174 Assert.assertEquals(a, b); | 1067 Assert.assertEquals(a, b); |
1175 } | 1068 } |
1176 private static void assertEqualsExactType(TestAllTypesLite.NestedEnum a, | |
1177 TestAllTypesLite.NestedEnum b) { | |
1178 Assert.assertEquals(a, b); | |
1179 } | |
1180 private static void assertEqualsExactType(ForeignEnumLite a, | |
1181 ForeignEnumLite b) { | |
1182 Assert.assertEquals(a, b); | |
1183 } | |
1184 private static void assertEqualsExactType(ImportEnumLite a, | |
1185 ImportEnumLite b) { | |
1186 Assert.assertEquals(a, b); | |
1187 } | |
1188 | |
1189 /** | 1069 /** |
1190 * Get an unmodifiable {@link ExtensionRegistry} containing all the | 1070 * Get an unmodifiable {@link ExtensionRegistry} containing all the |
1191 * extensions of {@code TestAllExtensions}. | 1071 * extensions of {@code TestAllExtensions}. |
1192 */ | 1072 */ |
1193 public static ExtensionRegistry getExtensionRegistry() { | 1073 public static ExtensionRegistry getExtensionRegistry() { |
1194 ExtensionRegistry registry = ExtensionRegistry.newInstance(); | 1074 ExtensionRegistry registry = ExtensionRegistry.newInstance(); |
1195 registerAllExtensions(registry); | 1075 registerAllExtensions(registry); |
1196 return registry.getUnmodifiable(); | 1076 return registry.getUnmodifiable(); |
1197 } | 1077 } |
1198 | 1078 |
| 1079 |
1199 /** | 1080 /** |
1200 * Register all of {@code TestAllExtensions}'s extensions with the | 1081 * Register all of {@code TestAllExtensions}'s extensions with the |
1201 * given {@link ExtensionRegistry}. | 1082 * given {@link ExtensionRegistry}. |
1202 */ | 1083 */ |
1203 public static void registerAllExtensions(ExtensionRegistry registry) { | 1084 public static void registerAllExtensions(ExtensionRegistry registry) { |
1204 UnittestProto.registerAllExtensions(registry); | 1085 UnittestProto.registerAllExtensions(registry); |
1205 TestUtilLite.registerAllExtensionsLite(registry); | |
1206 } | 1086 } |
1207 | 1087 |
| 1088 |
1208 /** | 1089 /** |
1209 * Set every field of {@code message} to the values expected by | 1090 * Set every field of {@code message} to the values expected by |
1210 * {@code assertAllExtensionsSet()}. | 1091 * {@code assertAllExtensionsSet()}. |
1211 */ | 1092 */ |
1212 public static void setAllExtensions(TestAllExtensions.Builder message) { | 1093 public static void setAllExtensions(TestAllExtensions.Builder message) { |
1213 message.setExtension(optionalInt32Extension , 101); | 1094 message.setExtension(optionalInt32Extension , 101); |
1214 message.setExtension(optionalInt64Extension , 102L); | 1095 message.setExtension(optionalInt64Extension , 102L); |
1215 message.setExtension(optionalUint32Extension , 103); | 1096 message.setExtension(optionalUint32Extension , 103); |
1216 message.setExtension(optionalUint64Extension , 104L); | 1097 message.setExtension(optionalUint64Extension , 104L); |
1217 message.setExtension(optionalSint32Extension , 105); | 1098 message.setExtension(optionalSint32Extension , 105); |
(...skipping 116 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1334 message.setExtension(defaultBoolExtension , false); | 1215 message.setExtension(defaultBoolExtension , false); |
1335 message.setExtension(defaultStringExtension , "415"); | 1216 message.setExtension(defaultStringExtension , "415"); |
1336 message.setExtension(defaultBytesExtension , toBytes("416")); | 1217 message.setExtension(defaultBytesExtension , toBytes("416")); |
1337 | 1218 |
1338 message.setExtension(defaultNestedEnumExtension, TestAllTypes.NestedEnum.FOO
); | 1219 message.setExtension(defaultNestedEnumExtension, TestAllTypes.NestedEnum.FOO
); |
1339 message.setExtension(defaultForeignEnumExtension, ForeignEnum.FOREIGN_FOO); | 1220 message.setExtension(defaultForeignEnumExtension, ForeignEnum.FOREIGN_FOO); |
1340 message.setExtension(defaultImportEnumExtension, ImportEnum.IMPORT_FOO); | 1221 message.setExtension(defaultImportEnumExtension, ImportEnum.IMPORT_FOO); |
1341 | 1222 |
1342 message.setExtension(defaultStringPieceExtension, "424"); | 1223 message.setExtension(defaultStringPieceExtension, "424"); |
1343 message.setExtension(defaultCordExtension, "425"); | 1224 message.setExtension(defaultCordExtension, "425"); |
1344 | |
1345 message.setExtension(oneofUint32Extension, 601); | |
1346 message.setExtension(oneofNestedMessageExtension, | |
1347 TestAllTypes.NestedMessage.newBuilder().setBb(602).build()); | |
1348 message.setExtension(oneofStringExtension, "603"); | |
1349 message.setExtension(oneofBytesExtension, toBytes("604")); | |
1350 } | 1225 } |
1351 | 1226 |
1352 // ------------------------------------------------------------------- | 1227 // ------------------------------------------------------------------- |
1353 | 1228 |
1354 /** | 1229 /** |
1355 * Modify the repeated extensions of {@code message} to contain the values | 1230 * Modify the repeated extensions of {@code message} to contain the values |
1356 * expected by {@code assertRepeatedExtensionsModified()}. | 1231 * expected by {@code assertRepeatedExtensionsModified()}. |
1357 */ | 1232 */ |
1358 public static void modifyRepeatedExtensions( | 1233 public static void modifyRepeatedExtensions( |
1359 TestAllExtensions.Builder message) { | 1234 TestAllExtensions.Builder message) { |
(...skipping 243 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1603 | 1478 |
1604 assertEqualsExactType(TestAllTypes.NestedEnum.FOO, | 1479 assertEqualsExactType(TestAllTypes.NestedEnum.FOO, |
1605 message.getExtension(defaultNestedEnumExtension )); | 1480 message.getExtension(defaultNestedEnumExtension )); |
1606 assertEqualsExactType(ForeignEnum.FOREIGN_FOO, | 1481 assertEqualsExactType(ForeignEnum.FOREIGN_FOO, |
1607 message.getExtension(defaultForeignEnumExtension)); | 1482 message.getExtension(defaultForeignEnumExtension)); |
1608 assertEqualsExactType(ImportEnum.IMPORT_FOO, | 1483 assertEqualsExactType(ImportEnum.IMPORT_FOO, |
1609 message.getExtension(defaultImportEnumExtension)); | 1484 message.getExtension(defaultImportEnumExtension)); |
1610 | 1485 |
1611 assertEqualsExactType("424", message.getExtension(defaultStringPieceExtensio
n)); | 1486 assertEqualsExactType("424", message.getExtension(defaultStringPieceExtensio
n)); |
1612 assertEqualsExactType("425", message.getExtension(defaultCordExtension)); | 1487 assertEqualsExactType("425", message.getExtension(defaultCordExtension)); |
1613 | |
1614 Assert.assertTrue(message.hasExtension(oneofBytesExtension)); | |
1615 | |
1616 assertEqualsExactType(toBytes("604"), message.getExtension(oneofBytesExtensi
on)); | |
1617 } | 1488 } |
1618 | 1489 |
1619 // ------------------------------------------------------------------- | 1490 // ------------------------------------------------------------------- |
1620 | 1491 |
1621 /** | 1492 /** |
1622 * Assert (using {@code junit.framework.Assert}} that all extensions of | 1493 * Assert (using {@code junit.framework.Assert}} that all extensions of |
1623 * {@code message} are cleared, and that getting the extensions returns their | 1494 * {@code message} are cleared, and that getting the extensions returns their |
1624 * default values. | 1495 * default values. |
1625 */ | 1496 */ |
1626 public static void assertExtensionsClear(TestAllExtensionsOrBuilder message) { | 1497 public static void assertExtensionsClear(TestAllExtensionsOrBuilder message) { |
(...skipping 166 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1793 | 1664 |
1794 assertEqualsExactType(TestAllTypes.NestedEnum.BAR, | 1665 assertEqualsExactType(TestAllTypes.NestedEnum.BAR, |
1795 message.getExtension(defaultNestedEnumExtension )); | 1666 message.getExtension(defaultNestedEnumExtension )); |
1796 assertEqualsExactType(ForeignEnum.FOREIGN_BAR, | 1667 assertEqualsExactType(ForeignEnum.FOREIGN_BAR, |
1797 message.getExtension(defaultForeignEnumExtension)); | 1668 message.getExtension(defaultForeignEnumExtension)); |
1798 assertEqualsExactType(ImportEnum.IMPORT_BAR, | 1669 assertEqualsExactType(ImportEnum.IMPORT_BAR, |
1799 message.getExtension(defaultImportEnumExtension)); | 1670 message.getExtension(defaultImportEnumExtension)); |
1800 | 1671 |
1801 assertEqualsExactType("abc", message.getExtension(defaultStringPieceExtensio
n)); | 1672 assertEqualsExactType("abc", message.getExtension(defaultStringPieceExtensio
n)); |
1802 assertEqualsExactType("123", message.getExtension(defaultCordExtension)); | 1673 assertEqualsExactType("123", message.getExtension(defaultCordExtension)); |
1803 | |
1804 Assert.assertFalse(message.hasExtension(oneofUint32Extension)); | |
1805 Assert.assertFalse(message.hasExtension(oneofNestedMessageExtension)); | |
1806 Assert.assertFalse(message.hasExtension(oneofStringExtension)); | |
1807 Assert.assertFalse(message.hasExtension(oneofBytesExtension)); | |
1808 } | 1674 } |
1809 | 1675 |
1810 // ------------------------------------------------------------------- | 1676 // ------------------------------------------------------------------- |
1811 | 1677 |
1812 /** | 1678 /** |
1813 * Assert (using {@code junit.framework.Assert}} that all extensions of | 1679 * Assert (using {@code junit.framework.Assert}} that all extensions of |
1814 * {@code message} are set to the values assigned by {@code setAllExtensions} | 1680 * {@code message} are set to the values assigned by {@code setAllExtensions} |
1815 * followed by {@code modifyRepeatedExtensions}. | 1681 * followed by {@code modifyRepeatedExtensions}. |
1816 */ | 1682 */ |
1817 public static void assertRepeatedExtensionsModified( | 1683 public static void assertRepeatedExtensionsModified( |
(...skipping 167 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1985 assertEqualsExactType(708L , message.getExtension(packedFixed64Extension , 1
)); | 1851 assertEqualsExactType(708L , message.getExtension(packedFixed64Extension , 1
)); |
1986 assertEqualsExactType(709 , message.getExtension(packedSfixed32Extension, 1
)); | 1852 assertEqualsExactType(709 , message.getExtension(packedSfixed32Extension, 1
)); |
1987 assertEqualsExactType(710L , message.getExtension(packedSfixed64Extension, 1
)); | 1853 assertEqualsExactType(710L , message.getExtension(packedSfixed64Extension, 1
)); |
1988 assertEqualsExactType(711F , message.getExtension(packedFloatExtension , 1
)); | 1854 assertEqualsExactType(711F , message.getExtension(packedFloatExtension , 1
)); |
1989 assertEqualsExactType(712D , message.getExtension(packedDoubleExtension , 1
)); | 1855 assertEqualsExactType(712D , message.getExtension(packedDoubleExtension , 1
)); |
1990 assertEqualsExactType(false, message.getExtension(packedBoolExtension , 1
)); | 1856 assertEqualsExactType(false, message.getExtension(packedBoolExtension , 1
)); |
1991 assertEqualsExactType(ForeignEnum.FOREIGN_BAZ, | 1857 assertEqualsExactType(ForeignEnum.FOREIGN_BAZ, |
1992 message.getExtension(packedEnumExtension, 1)); | 1858 message.getExtension(packedEnumExtension, 1)); |
1993 } | 1859 } |
1994 | 1860 |
1995 // =================================================================== | |
1996 // Lite extensions | |
1997 | |
1998 /** | |
1999 * Assert (using {@code junit.framework.Assert}} that all extensions of | |
2000 * {@code message} are set to the values assigned by {@code setAllExtensions}. | |
2001 */ | |
2002 public static void assertAllExtensionsSet( | |
2003 TestAllExtensionsLiteOrBuilder message) { | |
2004 Assert.assertTrue(message.hasExtension(optionalInt32ExtensionLite )); | |
2005 Assert.assertTrue(message.hasExtension(optionalInt64ExtensionLite )); | |
2006 Assert.assertTrue(message.hasExtension(optionalUint32ExtensionLite )); | |
2007 Assert.assertTrue(message.hasExtension(optionalUint64ExtensionLite )); | |
2008 Assert.assertTrue(message.hasExtension(optionalSint32ExtensionLite )); | |
2009 Assert.assertTrue(message.hasExtension(optionalSint64ExtensionLite )); | |
2010 Assert.assertTrue(message.hasExtension(optionalFixed32ExtensionLite )); | |
2011 Assert.assertTrue(message.hasExtension(optionalFixed64ExtensionLite )); | |
2012 Assert.assertTrue(message.hasExtension(optionalSfixed32ExtensionLite)); | |
2013 Assert.assertTrue(message.hasExtension(optionalSfixed64ExtensionLite)); | |
2014 Assert.assertTrue(message.hasExtension(optionalFloatExtensionLite )); | |
2015 Assert.assertTrue(message.hasExtension(optionalDoubleExtensionLite )); | |
2016 Assert.assertTrue(message.hasExtension(optionalBoolExtensionLite )); | |
2017 Assert.assertTrue(message.hasExtension(optionalStringExtensionLite )); | |
2018 Assert.assertTrue(message.hasExtension(optionalBytesExtensionLite )); | |
2019 | |
2020 Assert.assertTrue(message.hasExtension(optionalGroupExtensionLite ))
; | |
2021 Assert.assertTrue(message.hasExtension(optionalNestedMessageExtensionLite ))
; | |
2022 Assert.assertTrue(message.hasExtension(optionalForeignMessageExtensionLite))
; | |
2023 Assert.assertTrue(message.hasExtension(optionalImportMessageExtensionLite ))
; | |
2024 | |
2025 Assert.assertTrue(message.getExtension(optionalGroupExtensionLite ).
hasA()); | |
2026 Assert.assertTrue(message.getExtension(optionalNestedMessageExtensionLite ).
hasBb()); | |
2027 Assert.assertTrue(message.getExtension(optionalForeignMessageExtensionLite).
hasC()); | |
2028 Assert.assertTrue(message.getExtension(optionalImportMessageExtensionLite ).
hasD()); | |
2029 | |
2030 Assert.assertTrue(message.hasExtension(optionalNestedEnumExtensionLite )); | |
2031 Assert.assertTrue(message.hasExtension(optionalForeignEnumExtensionLite)); | |
2032 Assert.assertTrue(message.hasExtension(optionalImportEnumExtensionLite )); | |
2033 | |
2034 Assert.assertTrue(message.hasExtension(optionalStringPieceExtensionLite)); | |
2035 Assert.assertTrue(message.hasExtension(optionalCordExtensionLite)); | |
2036 | |
2037 assertEqualsExactType(101 , message.getExtension(optionalInt32ExtensionLite
)); | |
2038 assertEqualsExactType(102L , message.getExtension(optionalInt64ExtensionLite
)); | |
2039 assertEqualsExactType(103 , message.getExtension(optionalUint32ExtensionLit
e )); | |
2040 assertEqualsExactType(104L , message.getExtension(optionalUint64ExtensionLit
e )); | |
2041 assertEqualsExactType(105 , message.getExtension(optionalSint32ExtensionLit
e )); | |
2042 assertEqualsExactType(106L , message.getExtension(optionalSint64ExtensionLit
e )); | |
2043 assertEqualsExactType(107 , message.getExtension(optionalFixed32ExtensionLi
te )); | |
2044 assertEqualsExactType(108L , message.getExtension(optionalFixed64ExtensionLi
te )); | |
2045 assertEqualsExactType(109 , message.getExtension(optionalSfixed32ExtensionL
ite)); | |
2046 assertEqualsExactType(110L , message.getExtension(optionalSfixed64ExtensionL
ite)); | |
2047 assertEqualsExactType(111F , message.getExtension(optionalFloatExtensionLite
)); | |
2048 assertEqualsExactType(112D , message.getExtension(optionalDoubleExtensionLit
e )); | |
2049 assertEqualsExactType(true , message.getExtension(optionalBoolExtensionLite
)); | |
2050 assertEqualsExactType("115", message.getExtension(optionalStringExtensionLit
e )); | |
2051 assertEqualsExactType(toBytes("116"), message.getExtension(optionalBytesExte
nsionLite)); | |
2052 | |
2053 assertEqualsExactType(117, message.getExtension(optionalGroupExtensionLite
).getA()); | |
2054 assertEqualsExactType(118, message.getExtension(optionalNestedMessageExtensi
onLite ).getBb()); | |
2055 assertEqualsExactType(119, message.getExtension(optionalForeignMessageExtens
ionLite).getC()); | |
2056 assertEqualsExactType(120, message.getExtension(optionalImportMessageExtensi
onLite ).getD()); | |
2057 assertEqualsExactType(126, message.getExtension( | |
2058 optionalPublicImportMessageExtensionLite).getE()); | |
2059 assertEqualsExactType(127, message.getExtension(optionalLazyMessageExtension
Lite).getBb()); | |
2060 | |
2061 assertEqualsExactType(TestAllTypesLite.NestedEnum.BAZ, | |
2062 message.getExtension(optionalNestedEnumExtensionLite)); | |
2063 assertEqualsExactType(ForeignEnumLite.FOREIGN_LITE_BAZ, | |
2064 message.getExtension(optionalForeignEnumExtensionLite)); | |
2065 assertEqualsExactType(ImportEnumLite.IMPORT_LITE_BAZ, | |
2066 message.getExtension(optionalImportEnumExtensionLite)); | |
2067 | |
2068 assertEqualsExactType("124", message.getExtension(optionalStringPieceExtensi
onLite)); | |
2069 assertEqualsExactType("125", message.getExtension(optionalCordExtensionLite)
); | |
2070 | |
2071 // ----------------------------------------------------------------- | |
2072 | |
2073 Assert.assertEquals(2, message.getExtensionCount(repeatedInt32ExtensionLite
)); | |
2074 Assert.assertEquals(2, message.getExtensionCount(repeatedInt64ExtensionLite
)); | |
2075 Assert.assertEquals(2, message.getExtensionCount(repeatedUint32ExtensionLite
)); | |
2076 Assert.assertEquals(2, message.getExtensionCount(repeatedUint64ExtensionLite
)); | |
2077 Assert.assertEquals(2, message.getExtensionCount(repeatedSint32ExtensionLite
)); | |
2078 Assert.assertEquals(2, message.getExtensionCount(repeatedSint64ExtensionLite
)); | |
2079 Assert.assertEquals(2, message.getExtensionCount(repeatedFixed32ExtensionLit
e )); | |
2080 Assert.assertEquals(2, message.getExtensionCount(repeatedFixed64ExtensionLit
e )); | |
2081 Assert.assertEquals(2, message.getExtensionCount(repeatedSfixed32ExtensionLi
te)); | |
2082 Assert.assertEquals(2, message.getExtensionCount(repeatedSfixed64ExtensionLi
te)); | |
2083 Assert.assertEquals(2, message.getExtensionCount(repeatedFloatExtensionLite
)); | |
2084 Assert.assertEquals(2, message.getExtensionCount(repeatedDoubleExtensionLite
)); | |
2085 Assert.assertEquals(2, message.getExtensionCount(repeatedBoolExtensionLite
)); | |
2086 Assert.assertEquals(2, message.getExtensionCount(repeatedStringExtensionLite
)); | |
2087 Assert.assertEquals(2, message.getExtensionCount(repeatedBytesExtensionLite
)); | |
2088 | |
2089 Assert.assertEquals(2, message.getExtensionCount(repeatedGroupExtensionLite
)); | |
2090 Assert.assertEquals(2, message.getExtensionCount(repeatedNestedMessageExtens
ionLite )); | |
2091 Assert.assertEquals(2, message.getExtensionCount(repeatedForeignMessageExten
sionLite)); | |
2092 Assert.assertEquals(2, message.getExtensionCount(repeatedImportMessageExtens
ionLite )); | |
2093 Assert.assertEquals(2, message.getExtensionCount(repeatedLazyMessageExtensio
nLite )); | |
2094 Assert.assertEquals(2, message.getExtensionCount(repeatedNestedEnumExtension
Lite )); | |
2095 Assert.assertEquals(2, message.getExtensionCount(repeatedForeignEnumExtensio
nLite )); | |
2096 Assert.assertEquals(2, message.getExtensionCount(repeatedImportEnumExtension
Lite )); | |
2097 | |
2098 Assert.assertEquals(2, message.getExtensionCount(repeatedStringPieceExtensio
nLite)); | |
2099 Assert.assertEquals(2, message.getExtensionCount(repeatedCordExtensionLite))
; | |
2100 | |
2101 assertEqualsExactType(201 , message.getExtension(repeatedInt32ExtensionLite
, 0)); | |
2102 assertEqualsExactType(202L , message.getExtension(repeatedInt64ExtensionLite
, 0)); | |
2103 assertEqualsExactType(203 , message.getExtension(repeatedUint32ExtensionLit
e , 0)); | |
2104 assertEqualsExactType(204L , message.getExtension(repeatedUint64ExtensionLit
e , 0)); | |
2105 assertEqualsExactType(205 , message.getExtension(repeatedSint32ExtensionLit
e , 0)); | |
2106 assertEqualsExactType(206L , message.getExtension(repeatedSint64ExtensionLit
e , 0)); | |
2107 assertEqualsExactType(207 , message.getExtension(repeatedFixed32ExtensionLi
te , 0)); | |
2108 assertEqualsExactType(208L , message.getExtension(repeatedFixed64ExtensionLi
te , 0)); | |
2109 assertEqualsExactType(209 , message.getExtension(repeatedSfixed32ExtensionL
ite, 0)); | |
2110 assertEqualsExactType(210L , message.getExtension(repeatedSfixed64ExtensionL
ite, 0)); | |
2111 assertEqualsExactType(211F , message.getExtension(repeatedFloatExtensionLite
, 0)); | |
2112 assertEqualsExactType(212D , message.getExtension(repeatedDoubleExtensionLit
e , 0)); | |
2113 assertEqualsExactType(true , message.getExtension(repeatedBoolExtensionLite
, 0)); | |
2114 assertEqualsExactType("215", message.getExtension(repeatedStringExtensionLit
e , 0)); | |
2115 assertEqualsExactType(toBytes("216"), message.getExtension(repeatedBytesExte
nsionLite, 0)); | |
2116 | |
2117 assertEqualsExactType(217, message.getExtension(repeatedGroupExtensionLite
,0).getA()); | |
2118 assertEqualsExactType(218, message.getExtension(repeatedNestedMessageExtensi
onLite ,0).getBb()); | |
2119 assertEqualsExactType(219, message.getExtension(repeatedForeignMessageExtens
ionLite,0).getC()); | |
2120 assertEqualsExactType(220, message.getExtension(repeatedImportMessageExtensi
onLite ,0).getD()); | |
2121 assertEqualsExactType(227, message.getExtension(repeatedLazyMessageExtension
Lite ,0).getBb()); | |
2122 | |
2123 assertEqualsExactType(TestAllTypesLite.NestedEnum.BAR, | |
2124 message.getExtension(repeatedNestedEnumExtensionLite, 0)); | |
2125 assertEqualsExactType(ForeignEnumLite.FOREIGN_LITE_BAR, | |
2126 message.getExtension(repeatedForeignEnumExtensionLite, 0)); | |
2127 assertEqualsExactType(ImportEnumLite.IMPORT_LITE_BAR, | |
2128 message.getExtension(repeatedImportEnumExtensionLite, 0)); | |
2129 | |
2130 assertEqualsExactType("224", message.getExtension(repeatedStringPieceExtensi
onLite, 0)); | |
2131 assertEqualsExactType("225", message.getExtension(repeatedCordExtensionLite,
0)); | |
2132 | |
2133 assertEqualsExactType(301 , message.getExtension(repeatedInt32ExtensionLite
, 1)); | |
2134 assertEqualsExactType(302L , message.getExtension(repeatedInt64ExtensionLite
, 1)); | |
2135 assertEqualsExactType(303 , message.getExtension(repeatedUint32ExtensionLit
e , 1)); | |
2136 assertEqualsExactType(304L , message.getExtension(repeatedUint64ExtensionLit
e , 1)); | |
2137 assertEqualsExactType(305 , message.getExtension(repeatedSint32ExtensionLit
e , 1)); | |
2138 assertEqualsExactType(306L , message.getExtension(repeatedSint64ExtensionLit
e , 1)); | |
2139 assertEqualsExactType(307 , message.getExtension(repeatedFixed32ExtensionLi
te , 1)); | |
2140 assertEqualsExactType(308L , message.getExtension(repeatedFixed64ExtensionLi
te , 1)); | |
2141 assertEqualsExactType(309 , message.getExtension(repeatedSfixed32ExtensionL
ite, 1)); | |
2142 assertEqualsExactType(310L , message.getExtension(repeatedSfixed64ExtensionL
ite, 1)); | |
2143 assertEqualsExactType(311F , message.getExtension(repeatedFloatExtensionLite
, 1)); | |
2144 assertEqualsExactType(312D , message.getExtension(repeatedDoubleExtensionLit
e , 1)); | |
2145 assertEqualsExactType(false, message.getExtension(repeatedBoolExtensionLite
, 1)); | |
2146 assertEqualsExactType("315", message.getExtension(repeatedStringExtensionLit
e , 1)); | |
2147 assertEqualsExactType(toBytes("316"), message.getExtension(repeatedBytesExte
nsionLite, 1)); | |
2148 | |
2149 assertEqualsExactType(317, message.getExtension(repeatedGroupExtensionLite
,1).getA()); | |
2150 assertEqualsExactType(318, message.getExtension(repeatedNestedMessageExtensi
onLite ,1).getBb()); | |
2151 assertEqualsExactType(319, message.getExtension(repeatedForeignMessageExtens
ionLite,1).getC()); | |
2152 assertEqualsExactType(320, message.getExtension(repeatedImportMessageExtensi
onLite ,1).getD()); | |
2153 assertEqualsExactType(327, message.getExtension(repeatedLazyMessageExtension
Lite ,1).getBb()); | |
2154 | |
2155 assertEqualsExactType(TestAllTypesLite.NestedEnum.BAZ, | |
2156 message.getExtension(repeatedNestedEnumExtensionLite, 1)); | |
2157 assertEqualsExactType(ForeignEnumLite.FOREIGN_LITE_BAZ, | |
2158 message.getExtension(repeatedForeignEnumExtensionLite, 1)); | |
2159 assertEqualsExactType(ImportEnumLite.IMPORT_LITE_BAZ, | |
2160 message.getExtension(repeatedImportEnumExtensionLite, 1)); | |
2161 | |
2162 assertEqualsExactType("324", message.getExtension(repeatedStringPieceExtensi
onLite, 1)); | |
2163 assertEqualsExactType("325", message.getExtension(repeatedCordExtensionLite,
1)); | |
2164 | |
2165 // ----------------------------------------------------------------- | |
2166 | |
2167 Assert.assertTrue(message.hasExtension(defaultInt32ExtensionLite )); | |
2168 Assert.assertTrue(message.hasExtension(defaultInt64ExtensionLite )); | |
2169 Assert.assertTrue(message.hasExtension(defaultUint32ExtensionLite )); | |
2170 Assert.assertTrue(message.hasExtension(defaultUint64ExtensionLite )); | |
2171 Assert.assertTrue(message.hasExtension(defaultSint32ExtensionLite )); | |
2172 Assert.assertTrue(message.hasExtension(defaultSint64ExtensionLite )); | |
2173 Assert.assertTrue(message.hasExtension(defaultFixed32ExtensionLite )); | |
2174 Assert.assertTrue(message.hasExtension(defaultFixed64ExtensionLite )); | |
2175 Assert.assertTrue(message.hasExtension(defaultSfixed32ExtensionLite)); | |
2176 Assert.assertTrue(message.hasExtension(defaultSfixed64ExtensionLite)); | |
2177 Assert.assertTrue(message.hasExtension(defaultFloatExtensionLite )); | |
2178 Assert.assertTrue(message.hasExtension(defaultDoubleExtensionLite )); | |
2179 Assert.assertTrue(message.hasExtension(defaultBoolExtensionLite )); | |
2180 Assert.assertTrue(message.hasExtension(defaultStringExtensionLite )); | |
2181 Assert.assertTrue(message.hasExtension(defaultBytesExtensionLite )); | |
2182 | |
2183 Assert.assertTrue(message.hasExtension(defaultNestedEnumExtensionLite )); | |
2184 Assert.assertTrue(message.hasExtension(defaultForeignEnumExtensionLite)); | |
2185 Assert.assertTrue(message.hasExtension(defaultImportEnumExtensionLite )); | |
2186 | |
2187 Assert.assertTrue(message.hasExtension(defaultStringPieceExtensionLite)); | |
2188 Assert.assertTrue(message.hasExtension(defaultCordExtensionLite)); | |
2189 | |
2190 assertEqualsExactType(401 , message.getExtension(defaultInt32ExtensionLite
)); | |
2191 assertEqualsExactType(402L , message.getExtension(defaultInt64ExtensionLite
)); | |
2192 assertEqualsExactType(403 , message.getExtension(defaultUint32ExtensionLite
)); | |
2193 assertEqualsExactType(404L , message.getExtension(defaultUint64ExtensionLite
)); | |
2194 assertEqualsExactType(405 , message.getExtension(defaultSint32ExtensionLite
)); | |
2195 assertEqualsExactType(406L , message.getExtension(defaultSint64ExtensionLite
)); | |
2196 assertEqualsExactType(407 , message.getExtension(defaultFixed32ExtensionLit
e )); | |
2197 assertEqualsExactType(408L , message.getExtension(defaultFixed64ExtensionLit
e )); | |
2198 assertEqualsExactType(409 , message.getExtension(defaultSfixed32ExtensionLi
te)); | |
2199 assertEqualsExactType(410L , message.getExtension(defaultSfixed64ExtensionLi
te)); | |
2200 assertEqualsExactType(411F , message.getExtension(defaultFloatExtensionLite
)); | |
2201 assertEqualsExactType(412D , message.getExtension(defaultDoubleExtensionLite
)); | |
2202 assertEqualsExactType(false, message.getExtension(defaultBoolExtensionLite
)); | |
2203 assertEqualsExactType("415", message.getExtension(defaultStringExtensionLite
)); | |
2204 assertEqualsExactType(toBytes("416"), message.getExtension(defaultBytesExten
sionLite)); | |
2205 | |
2206 assertEqualsExactType(TestAllTypesLite.NestedEnum.FOO, | |
2207 message.getExtension(defaultNestedEnumExtensionLite )); | |
2208 assertEqualsExactType(ForeignEnumLite.FOREIGN_LITE_FOO, | |
2209 message.getExtension(defaultForeignEnumExtensionLite)); | |
2210 assertEqualsExactType(ImportEnumLite.IMPORT_LITE_FOO, | |
2211 message.getExtension(defaultImportEnumExtensionLite)); | |
2212 | |
2213 assertEqualsExactType("424", message.getExtension(defaultStringPieceExtensio
nLite)); | |
2214 assertEqualsExactType("425", message.getExtension(defaultCordExtensionLite))
; | |
2215 | |
2216 Assert.assertTrue(message.hasExtension(oneofBytesExtensionLite)); | |
2217 | |
2218 assertEqualsExactType(toBytes("604"), message.getExtension(oneofBytesExtensi
onLite)); | |
2219 } | |
2220 | |
2221 // ------------------------------------------------------------------- | |
2222 | |
2223 /** | |
2224 * Assert (using {@code junit.framework.Assert}} that all extensions of | |
2225 * {@code message} are cleared, and that getting the extensions returns their | |
2226 * default values. | |
2227 */ | |
2228 public static void assertExtensionsClear( | |
2229 TestAllExtensionsLiteOrBuilder message) { | |
2230 // hasBlah() should initially be false for all optional fields. | |
2231 Assert.assertFalse(message.hasExtension(optionalInt32ExtensionLite )); | |
2232 Assert.assertFalse(message.hasExtension(optionalInt64ExtensionLite )); | |
2233 Assert.assertFalse(message.hasExtension(optionalUint32ExtensionLite )); | |
2234 Assert.assertFalse(message.hasExtension(optionalUint64ExtensionLite )); | |
2235 Assert.assertFalse(message.hasExtension(optionalSint32ExtensionLite )); | |
2236 Assert.assertFalse(message.hasExtension(optionalSint64ExtensionLite )); | |
2237 Assert.assertFalse(message.hasExtension(optionalFixed32ExtensionLite )); | |
2238 Assert.assertFalse(message.hasExtension(optionalFixed64ExtensionLite )); | |
2239 Assert.assertFalse(message.hasExtension(optionalSfixed32ExtensionLite)); | |
2240 Assert.assertFalse(message.hasExtension(optionalSfixed64ExtensionLite)); | |
2241 Assert.assertFalse(message.hasExtension(optionalFloatExtensionLite )); | |
2242 Assert.assertFalse(message.hasExtension(optionalDoubleExtensionLite )); | |
2243 Assert.assertFalse(message.hasExtension(optionalBoolExtensionLite )); | |
2244 Assert.assertFalse(message.hasExtension(optionalStringExtensionLite )); | |
2245 Assert.assertFalse(message.hasExtension(optionalBytesExtensionLite )); | |
2246 | |
2247 Assert.assertFalse(message.hasExtension(optionalGroupExtensionLite
)); | |
2248 Assert.assertFalse(message.hasExtension(optionalNestedMessageExtensionLite
)); | |
2249 Assert.assertFalse(message.hasExtension(optionalForeignMessageExtensionLite
)); | |
2250 Assert.assertFalse(message.hasExtension(optionalImportMessageExtensionLite
)); | |
2251 Assert.assertFalse(message.hasExtension(optionalPublicImportMessageExtension
Lite)); | |
2252 Assert.assertFalse(message.hasExtension(optionalLazyMessageExtensionLite
)); | |
2253 | |
2254 Assert.assertFalse(message.hasExtension(optionalNestedEnumExtensionLite )); | |
2255 Assert.assertFalse(message.hasExtension(optionalForeignEnumExtensionLite)); | |
2256 Assert.assertFalse(message.hasExtension(optionalImportEnumExtensionLite )); | |
2257 | |
2258 Assert.assertFalse(message.hasExtension(optionalStringPieceExtensionLite)); | |
2259 Assert.assertFalse(message.hasExtension(optionalCordExtensionLite)); | |
2260 | |
2261 // Optional fields without defaults are set to zero or something like it. | |
2262 assertEqualsExactType(0 , message.getExtension(optionalInt32ExtensionLite
)); | |
2263 assertEqualsExactType(0L , message.getExtension(optionalInt64ExtensionLite
)); | |
2264 assertEqualsExactType(0 , message.getExtension(optionalUint32ExtensionLit
e )); | |
2265 assertEqualsExactType(0L , message.getExtension(optionalUint64ExtensionLit
e )); | |
2266 assertEqualsExactType(0 , message.getExtension(optionalSint32ExtensionLit
e )); | |
2267 assertEqualsExactType(0L , message.getExtension(optionalSint64ExtensionLit
e )); | |
2268 assertEqualsExactType(0 , message.getExtension(optionalFixed32ExtensionLi
te )); | |
2269 assertEqualsExactType(0L , message.getExtension(optionalFixed64ExtensionLi
te )); | |
2270 assertEqualsExactType(0 , message.getExtension(optionalSfixed32ExtensionL
ite)); | |
2271 assertEqualsExactType(0L , message.getExtension(optionalSfixed64ExtensionL
ite)); | |
2272 assertEqualsExactType(0F , message.getExtension(optionalFloatExtensionLite
)); | |
2273 assertEqualsExactType(0D , message.getExtension(optionalDoubleExtensionLit
e )); | |
2274 assertEqualsExactType(false, message.getExtension(optionalBoolExtensionLite
)); | |
2275 assertEqualsExactType("" , message.getExtension(optionalStringExtensionLit
e )); | |
2276 assertEqualsExactType(ByteString.EMPTY, message.getExtension(optionalBytesEx
tensionLite)); | |
2277 | |
2278 // Embedded messages should also be clear. | |
2279 Assert.assertFalse(message.getExtension(optionalGroupExtensionLite
).hasA()); | |
2280 Assert.assertFalse(message.getExtension(optionalNestedMessageExtensionLite
).hasBb()); | |
2281 Assert.assertFalse(message.getExtension(optionalForeignMessageExtensionLite
).hasC()); | |
2282 Assert.assertFalse(message.getExtension(optionalImportMessageExtensionLite
).hasD()); | |
2283 Assert.assertFalse(message.getExtension(optionalPublicImportMessageExtension
Lite).hasE()); | |
2284 Assert.assertFalse(message.getExtension(optionalLazyMessageExtensionLite
).hasBb()); | |
2285 | |
2286 assertEqualsExactType(0, message.getExtension(optionalGroupExtensionLite
).getA()); | |
2287 assertEqualsExactType(0, message.getExtension(optionalNestedMessageExtension
Lite ).getBb()); | |
2288 assertEqualsExactType(0, message.getExtension(optionalForeignMessageExtensio
nLite).getC()); | |
2289 assertEqualsExactType(0, message.getExtension(optionalImportMessageExtension
Lite ).getD()); | |
2290 assertEqualsExactType(0, message.getExtension( | |
2291 optionalPublicImportMessageExtensionLite).getE()); | |
2292 assertEqualsExactType(0, message.getExtension(optionalLazyMessageExtensionLi
te ).getBb()); | |
2293 | |
2294 // Enums without defaults are set to the first value in the enum. | |
2295 assertEqualsExactType(TestAllTypesLite.NestedEnum.FOO, | |
2296 message.getExtension(optionalNestedEnumExtensionLite )); | |
2297 assertEqualsExactType(ForeignEnumLite.FOREIGN_LITE_FOO, | |
2298 message.getExtension(optionalForeignEnumExtensionLite)); | |
2299 assertEqualsExactType(ImportEnumLite.IMPORT_LITE_FOO, | |
2300 message.getExtension(optionalImportEnumExtensionLite)); | |
2301 | |
2302 assertEqualsExactType("", message.getExtension(optionalStringPieceExtensionL
ite)); | |
2303 assertEqualsExactType("", message.getExtension(optionalCordExtensionLite)); | |
2304 | |
2305 // Repeated fields are empty. | |
2306 Assert.assertEquals(0, message.getExtensionCount(repeatedInt32ExtensionLite
)); | |
2307 Assert.assertEquals(0, message.getExtensionCount(repeatedInt64ExtensionLite
)); | |
2308 Assert.assertEquals(0, message.getExtensionCount(repeatedUint32ExtensionLite
)); | |
2309 Assert.assertEquals(0, message.getExtensionCount(repeatedUint64ExtensionLite
)); | |
2310 Assert.assertEquals(0, message.getExtensionCount(repeatedSint32ExtensionLite
)); | |
2311 Assert.assertEquals(0, message.getExtensionCount(repeatedSint64ExtensionLite
)); | |
2312 Assert.assertEquals(0, message.getExtensionCount(repeatedFixed32ExtensionLit
e )); | |
2313 Assert.assertEquals(0, message.getExtensionCount(repeatedFixed64ExtensionLit
e )); | |
2314 Assert.assertEquals(0, message.getExtensionCount(repeatedSfixed32ExtensionLi
te)); | |
2315 Assert.assertEquals(0, message.getExtensionCount(repeatedSfixed64ExtensionLi
te)); | |
2316 Assert.assertEquals(0, message.getExtensionCount(repeatedFloatExtensionLite
)); | |
2317 Assert.assertEquals(0, message.getExtensionCount(repeatedDoubleExtensionLite
)); | |
2318 Assert.assertEquals(0, message.getExtensionCount(repeatedBoolExtensionLite
)); | |
2319 Assert.assertEquals(0, message.getExtensionCount(repeatedStringExtensionLite
)); | |
2320 Assert.assertEquals(0, message.getExtensionCount(repeatedBytesExtensionLite
)); | |
2321 | |
2322 Assert.assertEquals(0, message.getExtensionCount(repeatedGroupExtensionLite
)); | |
2323 Assert.assertEquals(0, message.getExtensionCount(repeatedNestedMessageExtens
ionLite )); | |
2324 Assert.assertEquals(0, message.getExtensionCount(repeatedForeignMessageExten
sionLite)); | |
2325 Assert.assertEquals(0, message.getExtensionCount(repeatedImportMessageExtens
ionLite )); | |
2326 Assert.assertEquals(0, message.getExtensionCount(repeatedLazyMessageExtensio
nLite )); | |
2327 Assert.assertEquals(0, message.getExtensionCount(repeatedNestedEnumExtension
Lite )); | |
2328 Assert.assertEquals(0, message.getExtensionCount(repeatedForeignEnumExtensio
nLite )); | |
2329 Assert.assertEquals(0, message.getExtensionCount(repeatedImportEnumExtension
Lite )); | |
2330 | |
2331 Assert.assertEquals(0, message.getExtensionCount(repeatedStringPieceExtensio
nLite)); | |
2332 Assert.assertEquals(0, message.getExtensionCount(repeatedCordExtensionLite))
; | |
2333 | |
2334 // hasBlah() should also be false for all default fields. | |
2335 Assert.assertFalse(message.hasExtension(defaultInt32ExtensionLite )); | |
2336 Assert.assertFalse(message.hasExtension(defaultInt64ExtensionLite )); | |
2337 Assert.assertFalse(message.hasExtension(defaultUint32ExtensionLite )); | |
2338 Assert.assertFalse(message.hasExtension(defaultUint64ExtensionLite )); | |
2339 Assert.assertFalse(message.hasExtension(defaultSint32ExtensionLite )); | |
2340 Assert.assertFalse(message.hasExtension(defaultSint64ExtensionLite )); | |
2341 Assert.assertFalse(message.hasExtension(defaultFixed32ExtensionLite )); | |
2342 Assert.assertFalse(message.hasExtension(defaultFixed64ExtensionLite )); | |
2343 Assert.assertFalse(message.hasExtension(defaultSfixed32ExtensionLite)); | |
2344 Assert.assertFalse(message.hasExtension(defaultSfixed64ExtensionLite)); | |
2345 Assert.assertFalse(message.hasExtension(defaultFloatExtensionLite )); | |
2346 Assert.assertFalse(message.hasExtension(defaultDoubleExtensionLite )); | |
2347 Assert.assertFalse(message.hasExtension(defaultBoolExtensionLite )); | |
2348 Assert.assertFalse(message.hasExtension(defaultStringExtensionLite )); | |
2349 Assert.assertFalse(message.hasExtension(defaultBytesExtensionLite )); | |
2350 | |
2351 Assert.assertFalse(message.hasExtension(defaultNestedEnumExtensionLite )); | |
2352 Assert.assertFalse(message.hasExtension(defaultForeignEnumExtensionLite)); | |
2353 Assert.assertFalse(message.hasExtension(defaultImportEnumExtensionLite )); | |
2354 | |
2355 Assert.assertFalse(message.hasExtension(defaultStringPieceExtensionLite)); | |
2356 Assert.assertFalse(message.hasExtension(defaultCordExtensionLite)); | |
2357 | |
2358 // Fields with defaults have their default values (duh). | |
2359 assertEqualsExactType( 41 , message.getExtension(defaultInt32ExtensionLit
e )); | |
2360 assertEqualsExactType( 42L , message.getExtension(defaultInt64ExtensionLit
e )); | |
2361 assertEqualsExactType( 43 , message.getExtension(defaultUint32ExtensionLi
te )); | |
2362 assertEqualsExactType( 44L , message.getExtension(defaultUint64ExtensionLi
te )); | |
2363 assertEqualsExactType(-45 , message.getExtension(defaultSint32ExtensionLi
te )); | |
2364 assertEqualsExactType( 46L , message.getExtension(defaultSint64ExtensionLi
te )); | |
2365 assertEqualsExactType( 47 , message.getExtension(defaultFixed32ExtensionL
ite )); | |
2366 assertEqualsExactType( 48L , message.getExtension(defaultFixed64ExtensionL
ite )); | |
2367 assertEqualsExactType( 49 , message.getExtension(defaultSfixed32Extension
Lite)); | |
2368 assertEqualsExactType(-50L , message.getExtension(defaultSfixed64Extension
Lite)); | |
2369 assertEqualsExactType( 51.5F , message.getExtension(defaultFloatExtensionLit
e )); | |
2370 assertEqualsExactType( 52e3D , message.getExtension(defaultDoubleExtensionLi
te )); | |
2371 assertEqualsExactType(true , message.getExtension(defaultBoolExtensionLite
)); | |
2372 assertEqualsExactType("hello", message.getExtension(defaultStringExtensionLi
te )); | |
2373 assertEqualsExactType(toBytes("world"), message.getExtension(defaultBytesExt
ensionLite)); | |
2374 | |
2375 assertEqualsExactType(TestAllTypesLite.NestedEnum.BAR, | |
2376 message.getExtension(defaultNestedEnumExtensionLite )); | |
2377 assertEqualsExactType(ForeignEnumLite.FOREIGN_LITE_BAR, | |
2378 message.getExtension(defaultForeignEnumExtensionLite)); | |
2379 assertEqualsExactType(ImportEnumLite.IMPORT_LITE_BAR, | |
2380 message.getExtension(defaultImportEnumExtensionLite)); | |
2381 | |
2382 assertEqualsExactType("abc", message.getExtension(defaultStringPieceExtensio
nLite)); | |
2383 assertEqualsExactType("123", message.getExtension(defaultCordExtensionLite))
; | |
2384 | |
2385 Assert.assertFalse(message.hasExtension(oneofUint32ExtensionLite)); | |
2386 Assert.assertFalse(message.hasExtension(oneofNestedMessageExtensionLite)); | |
2387 Assert.assertFalse(message.hasExtension(oneofStringExtensionLite)); | |
2388 Assert.assertFalse(message.hasExtension(oneofBytesExtensionLite)); | |
2389 } | |
2390 | |
2391 // ------------------------------------------------------------------- | |
2392 | |
2393 /** | |
2394 * Assert (using {@code junit.framework.Assert}} that all extensions of | |
2395 * {@code message} are set to the values assigned by {@code setAllExtensions} | |
2396 * followed by {@code modifyRepeatedExtensions}. | |
2397 */ | |
2398 public static void assertRepeatedExtensionsModified( | |
2399 TestAllExtensionsLiteOrBuilder message) { | |
2400 // ModifyRepeatedFields only sets the second repeated element of each | |
2401 // field. In addition to verifying this, we also verify that the first | |
2402 // element and size were *not* modified. | |
2403 Assert.assertEquals(2, message.getExtensionCount(repeatedInt32ExtensionLite
)); | |
2404 Assert.assertEquals(2, message.getExtensionCount(repeatedInt64ExtensionLite
)); | |
2405 Assert.assertEquals(2, message.getExtensionCount(repeatedUint32ExtensionLite
)); | |
2406 Assert.assertEquals(2, message.getExtensionCount(repeatedUint64ExtensionLite
)); | |
2407 Assert.assertEquals(2, message.getExtensionCount(repeatedSint32ExtensionLite
)); | |
2408 Assert.assertEquals(2, message.getExtensionCount(repeatedSint64ExtensionLite
)); | |
2409 Assert.assertEquals(2, message.getExtensionCount(repeatedFixed32ExtensionLit
e )); | |
2410 Assert.assertEquals(2, message.getExtensionCount(repeatedFixed64ExtensionLit
e )); | |
2411 Assert.assertEquals(2, message.getExtensionCount(repeatedSfixed32ExtensionLi
te)); | |
2412 Assert.assertEquals(2, message.getExtensionCount(repeatedSfixed64ExtensionLi
te)); | |
2413 Assert.assertEquals(2, message.getExtensionCount(repeatedFloatExtensionLite
)); | |
2414 Assert.assertEquals(2, message.getExtensionCount(repeatedDoubleExtensionLite
)); | |
2415 Assert.assertEquals(2, message.getExtensionCount(repeatedBoolExtensionLite
)); | |
2416 Assert.assertEquals(2, message.getExtensionCount(repeatedStringExtensionLite
)); | |
2417 Assert.assertEquals(2, message.getExtensionCount(repeatedBytesExtensionLite
)); | |
2418 | |
2419 Assert.assertEquals(2, message.getExtensionCount(repeatedGroupExtensionLite
)); | |
2420 Assert.assertEquals(2, message.getExtensionCount(repeatedNestedMessageExtens
ionLite )); | |
2421 Assert.assertEquals(2, message.getExtensionCount(repeatedForeignMessageExten
sionLite)); | |
2422 Assert.assertEquals(2, message.getExtensionCount(repeatedImportMessageExtens
ionLite )); | |
2423 Assert.assertEquals(2, message.getExtensionCount(repeatedLazyMessageExtensio
nLite )); | |
2424 Assert.assertEquals(2, message.getExtensionCount(repeatedNestedEnumExtension
Lite )); | |
2425 Assert.assertEquals(2, message.getExtensionCount(repeatedForeignEnumExtensio
nLite )); | |
2426 Assert.assertEquals(2, message.getExtensionCount(repeatedImportEnumExtension
Lite )); | |
2427 | |
2428 Assert.assertEquals(2, message.getExtensionCount(repeatedStringPieceExtensio
nLite)); | |
2429 Assert.assertEquals(2, message.getExtensionCount(repeatedCordExtensionLite))
; | |
2430 | |
2431 assertEqualsExactType(201 , message.getExtension(repeatedInt32ExtensionLite
, 0)); | |
2432 assertEqualsExactType(202L , message.getExtension(repeatedInt64ExtensionLite
, 0)); | |
2433 assertEqualsExactType(203 , message.getExtension(repeatedUint32ExtensionLit
e , 0)); | |
2434 assertEqualsExactType(204L , message.getExtension(repeatedUint64ExtensionLit
e , 0)); | |
2435 assertEqualsExactType(205 , message.getExtension(repeatedSint32ExtensionLit
e , 0)); | |
2436 assertEqualsExactType(206L , message.getExtension(repeatedSint64ExtensionLit
e , 0)); | |
2437 assertEqualsExactType(207 , message.getExtension(repeatedFixed32ExtensionLi
te , 0)); | |
2438 assertEqualsExactType(208L , message.getExtension(repeatedFixed64ExtensionLi
te , 0)); | |
2439 assertEqualsExactType(209 , message.getExtension(repeatedSfixed32ExtensionL
ite, 0)); | |
2440 assertEqualsExactType(210L , message.getExtension(repeatedSfixed64ExtensionL
ite, 0)); | |
2441 assertEqualsExactType(211F , message.getExtension(repeatedFloatExtensionLite
, 0)); | |
2442 assertEqualsExactType(212D , message.getExtension(repeatedDoubleExtensionLit
e , 0)); | |
2443 assertEqualsExactType(true , message.getExtension(repeatedBoolExtensionLite
, 0)); | |
2444 assertEqualsExactType("215", message.getExtension(repeatedStringExtensionLit
e , 0)); | |
2445 assertEqualsExactType(toBytes("216"), message.getExtension(repeatedBytesExte
nsionLite, 0)); | |
2446 | |
2447 assertEqualsExactType(217, message.getExtension(repeatedGroupExtensionLite
,0).getA()); | |
2448 assertEqualsExactType(218, message.getExtension(repeatedNestedMessageExtensi
onLite ,0).getBb()); | |
2449 assertEqualsExactType(219, message.getExtension(repeatedForeignMessageExtens
ionLite,0).getC()); | |
2450 assertEqualsExactType(220, message.getExtension(repeatedImportMessageExtensi
onLite ,0).getD()); | |
2451 assertEqualsExactType(227, message.getExtension(repeatedLazyMessageExtension
Lite ,0).getBb()); | |
2452 | |
2453 assertEqualsExactType(TestAllTypesLite.NestedEnum.BAR, | |
2454 message.getExtension(repeatedNestedEnumExtensionLite, 0)); | |
2455 assertEqualsExactType(ForeignEnumLite.FOREIGN_LITE_BAR, | |
2456 message.getExtension(repeatedForeignEnumExtensionLite, 0)); | |
2457 assertEqualsExactType(ImportEnumLite.IMPORT_LITE_BAR, | |
2458 message.getExtension(repeatedImportEnumExtensionLite, 0)); | |
2459 | |
2460 assertEqualsExactType("224", message.getExtension(repeatedStringPieceExtensi
onLite, 0)); | |
2461 assertEqualsExactType("225", message.getExtension(repeatedCordExtensionLite,
0)); | |
2462 | |
2463 // Actually verify the second (modified) elements now. | |
2464 assertEqualsExactType(501 , message.getExtension(repeatedInt32ExtensionLite
, 1)); | |
2465 assertEqualsExactType(502L , message.getExtension(repeatedInt64ExtensionLite
, 1)); | |
2466 assertEqualsExactType(503 , message.getExtension(repeatedUint32ExtensionLit
e , 1)); | |
2467 assertEqualsExactType(504L , message.getExtension(repeatedUint64ExtensionLit
e , 1)); | |
2468 assertEqualsExactType(505 , message.getExtension(repeatedSint32ExtensionLit
e , 1)); | |
2469 assertEqualsExactType(506L , message.getExtension(repeatedSint64ExtensionLit
e , 1)); | |
2470 assertEqualsExactType(507 , message.getExtension(repeatedFixed32ExtensionLi
te , 1)); | |
2471 assertEqualsExactType(508L , message.getExtension(repeatedFixed64ExtensionLi
te , 1)); | |
2472 assertEqualsExactType(509 , message.getExtension(repeatedSfixed32ExtensionL
ite, 1)); | |
2473 assertEqualsExactType(510L , message.getExtension(repeatedSfixed64ExtensionL
ite, 1)); | |
2474 assertEqualsExactType(511F , message.getExtension(repeatedFloatExtensionLite
, 1)); | |
2475 assertEqualsExactType(512D , message.getExtension(repeatedDoubleExtensionLit
e , 1)); | |
2476 assertEqualsExactType(true , message.getExtension(repeatedBoolExtensionLite
, 1)); | |
2477 assertEqualsExactType("515", message.getExtension(repeatedStringExtensionLit
e , 1)); | |
2478 assertEqualsExactType(toBytes("516"), message.getExtension(repeatedBytesExte
nsionLite, 1)); | |
2479 | |
2480 assertEqualsExactType(517, message.getExtension(repeatedGroupExtensionLite
,1).getA()); | |
2481 assertEqualsExactType(518, message.getExtension(repeatedNestedMessageExtensi
onLite ,1).getBb()); | |
2482 assertEqualsExactType(519, message.getExtension(repeatedForeignMessageExtens
ionLite,1).getC()); | |
2483 assertEqualsExactType(520, message.getExtension(repeatedImportMessageExtensi
onLite ,1).getD()); | |
2484 assertEqualsExactType(527, message.getExtension(repeatedLazyMessageExtension
Lite ,1).getBb()); | |
2485 | |
2486 assertEqualsExactType(TestAllTypesLite.NestedEnum.FOO, | |
2487 message.getExtension(repeatedNestedEnumExtensionLite, 1)); | |
2488 assertEqualsExactType(ForeignEnumLite.FOREIGN_LITE_FOO, | |
2489 message.getExtension(repeatedForeignEnumExtensionLite, 1)); | |
2490 assertEqualsExactType(ImportEnumLite.IMPORT_LITE_FOO, | |
2491 message.getExtension(repeatedImportEnumExtensionLite, 1)); | |
2492 | |
2493 assertEqualsExactType("524", message.getExtension(repeatedStringPieceExtensi
onLite, 1)); | |
2494 assertEqualsExactType("525", message.getExtension(repeatedCordExtensionLite,
1)); | |
2495 } | |
2496 | |
2497 public static void assertPackedExtensionsSet(TestPackedExtensionsLite message)
{ | |
2498 Assert.assertEquals(2, message.getExtensionCount(packedInt32ExtensionLite
)); | |
2499 Assert.assertEquals(2, message.getExtensionCount(packedInt64ExtensionLite
)); | |
2500 Assert.assertEquals(2, message.getExtensionCount(packedUint32ExtensionLite
)); | |
2501 Assert.assertEquals(2, message.getExtensionCount(packedUint64ExtensionLite
)); | |
2502 Assert.assertEquals(2, message.getExtensionCount(packedSint32ExtensionLite
)); | |
2503 Assert.assertEquals(2, message.getExtensionCount(packedSint64ExtensionLite
)); | |
2504 Assert.assertEquals(2, message.getExtensionCount(packedFixed32ExtensionLite
)); | |
2505 Assert.assertEquals(2, message.getExtensionCount(packedFixed64ExtensionLite
)); | |
2506 Assert.assertEquals(2, message.getExtensionCount(packedSfixed32ExtensionLite
)); | |
2507 Assert.assertEquals(2, message.getExtensionCount(packedSfixed64ExtensionLite
)); | |
2508 Assert.assertEquals(2, message.getExtensionCount(packedFloatExtensionLite
)); | |
2509 Assert.assertEquals(2, message.getExtensionCount(packedDoubleExtensionLite
)); | |
2510 Assert.assertEquals(2, message.getExtensionCount(packedBoolExtensionLite
)); | |
2511 Assert.assertEquals(2, message.getExtensionCount(packedEnumExtensionLite)); | |
2512 assertEqualsExactType(601 , message.getExtension(packedInt32ExtensionLite
, 0)); | |
2513 assertEqualsExactType(602L , message.getExtension(packedInt64ExtensionLite
, 0)); | |
2514 assertEqualsExactType(603 , message.getExtension(packedUint32ExtensionLite
, 0)); | |
2515 assertEqualsExactType(604L , message.getExtension(packedUint64ExtensionLite
, 0)); | |
2516 assertEqualsExactType(605 , message.getExtension(packedSint32ExtensionLite
, 0)); | |
2517 assertEqualsExactType(606L , message.getExtension(packedSint64ExtensionLite
, 0)); | |
2518 assertEqualsExactType(607 , message.getExtension(packedFixed32ExtensionLite
, 0)); | |
2519 assertEqualsExactType(608L , message.getExtension(packedFixed64ExtensionLite
, 0)); | |
2520 assertEqualsExactType(609 , message.getExtension(packedSfixed32ExtensionLit
e, 0)); | |
2521 assertEqualsExactType(610L , message.getExtension(packedSfixed64ExtensionLit
e, 0)); | |
2522 assertEqualsExactType(611F , message.getExtension(packedFloatExtensionLite
, 0)); | |
2523 assertEqualsExactType(612D , message.getExtension(packedDoubleExtensionLite
, 0)); | |
2524 assertEqualsExactType(true , message.getExtension(packedBoolExtensionLite
, 0)); | |
2525 assertEqualsExactType(ForeignEnumLite.FOREIGN_LITE_BAR, | |
2526 message.getExtension(packedEnumExtensionLite, 0)); | |
2527 assertEqualsExactType(701 , message.getExtension(packedInt32ExtensionLite
, 1)); | |
2528 assertEqualsExactType(702L , message.getExtension(packedInt64ExtensionLite
, 1)); | |
2529 assertEqualsExactType(703 , message.getExtension(packedUint32ExtensionLite
, 1)); | |
2530 assertEqualsExactType(704L , message.getExtension(packedUint64ExtensionLite
, 1)); | |
2531 assertEqualsExactType(705 , message.getExtension(packedSint32ExtensionLite
, 1)); | |
2532 assertEqualsExactType(706L , message.getExtension(packedSint64ExtensionLite
, 1)); | |
2533 assertEqualsExactType(707 , message.getExtension(packedFixed32ExtensionLite
, 1)); | |
2534 assertEqualsExactType(708L , message.getExtension(packedFixed64ExtensionLite
, 1)); | |
2535 assertEqualsExactType(709 , message.getExtension(packedSfixed32ExtensionLit
e, 1)); | |
2536 assertEqualsExactType(710L , message.getExtension(packedSfixed64ExtensionLit
e, 1)); | |
2537 assertEqualsExactType(711F , message.getExtension(packedFloatExtensionLite
, 1)); | |
2538 assertEqualsExactType(712D , message.getExtension(packedDoubleExtensionLite
, 1)); | |
2539 assertEqualsExactType(false, message.getExtension(packedBoolExtensionLite
, 1)); | |
2540 assertEqualsExactType(ForeignEnumLite.FOREIGN_LITE_BAZ, | |
2541 message.getExtension(packedEnumExtensionLite, 1)); | |
2542 } | |
2543 | |
2544 // =================================================================== | |
2545 // oneof | |
2546 public static void setOneof(TestOneof2.Builder message) { | |
2547 message.setFooLazyMessage( | |
2548 TestOneof2.NestedMessage.newBuilder().setQuxInt(100).build()); | |
2549 message.setBarString("101"); | |
2550 message.setBazInt(102); | |
2551 message.setBazString("103"); | |
2552 } | |
2553 | |
2554 public static void assertOneofSet(TestOneof2 message) { | |
2555 Assert.assertTrue(message.hasFooLazyMessage ()); | |
2556 Assert.assertTrue(message.getFooLazyMessage().hasQuxInt()); | |
2557 | |
2558 Assert.assertTrue(message.hasBarString()); | |
2559 Assert.assertTrue(message.hasBazInt ()); | |
2560 Assert.assertTrue(message.hasBazString()); | |
2561 | |
2562 Assert.assertEquals(100 , message.getFooLazyMessage().getQuxInt()); | |
2563 Assert.assertEquals("101", message.getBarString ()); | |
2564 Assert.assertEquals(102 , message.getBazInt ()); | |
2565 Assert.assertEquals("103", message.getBazString ()); | |
2566 } | |
2567 | |
2568 public static void assertAtMostOneFieldSetOneof(TestOneof2 message) { | |
2569 int count = 0; | |
2570 if (message.hasFooInt()) { ++count; } | |
2571 if (message.hasFooString()) { ++count; } | |
2572 if (message.hasFooCord()) { ++count; } | |
2573 if (message.hasFooStringPiece()) { ++count; } | |
2574 if (message.hasFooBytes()) { ++count; } | |
2575 if (message.hasFooEnum()) { ++count; } | |
2576 if (message.hasFooMessage()) { ++count; } | |
2577 if (message.hasFooGroup()) { ++count; } | |
2578 if (message.hasFooLazyMessage()) { ++count; } | |
2579 Assert.assertTrue(count <= 1); | |
2580 | |
2581 count = 0; | |
2582 if (message.hasBarInt()) { ++count; } | |
2583 if (message.hasBarString()) { ++count; } | |
2584 if (message.hasBarCord()) { ++count; } | |
2585 if (message.hasBarStringPiece()) { ++count; } | |
2586 if (message.hasBarBytes()) { ++count; } | |
2587 if (message.hasBarEnum()) { ++count; } | |
2588 Assert.assertTrue(count <= 1); | |
2589 | |
2590 switch (message.getFooCase()) { | |
2591 case FOO_INT: | |
2592 Assert.assertTrue(message.hasFooInt()); | |
2593 break; | |
2594 case FOO_STRING: | |
2595 Assert.assertTrue(message.hasFooString()); | |
2596 break; | |
2597 case FOO_CORD: | |
2598 Assert.assertTrue(message.hasFooCord()); | |
2599 break; | |
2600 case FOO_BYTES: | |
2601 Assert.assertTrue(message.hasFooBytes()); | |
2602 break; | |
2603 case FOO_ENUM: | |
2604 Assert.assertTrue(message.hasFooEnum()); | |
2605 break; | |
2606 case FOO_MESSAGE: | |
2607 Assert.assertTrue(message.hasFooMessage()); | |
2608 break; | |
2609 case FOOGROUP: | |
2610 Assert.assertTrue(message.hasFooGroup()); | |
2611 break; | |
2612 case FOO_LAZY_MESSAGE: | |
2613 Assert.assertTrue(message.hasFooLazyMessage()); | |
2614 break; | |
2615 case FOO_NOT_SET: | |
2616 break; | |
2617 } | |
2618 } | |
2619 | |
2620 // ================================================================= | 1861 // ================================================================= |
2621 | 1862 |
2622 /** | 1863 /** |
2623 * Performs the same things that the methods of {@code TestUtil} do, but | 1864 * Performs the same things that the methods of {@code TestUtil} do, but |
2624 * via the reflection interface. This is its own class because it needs | 1865 * via the reflection interface. This is its own class because it needs |
2625 * to know what descriptor to use. | 1866 * to know what descriptor to use. |
2626 */ | 1867 */ |
2627 public static class ReflectionTester { | 1868 public static class ReflectionTester { |
2628 private final Descriptors.Descriptor baseDescriptor; | 1869 private final Descriptors.Descriptor baseDescriptor; |
2629 private final ExtensionRegistry extensionRegistry; | 1870 private final ExtensionRegistry extensionRegistry; |
(...skipping 146 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2776 * Calls {@code parent.newBuilderForField()} or uses the | 2017 * Calls {@code parent.newBuilderForField()} or uses the |
2777 * {@code ExtensionRegistry} to find an appropriate builder, depending | 2018 * {@code ExtensionRegistry} to find an appropriate builder, depending |
2778 * on what type is being tested. | 2019 * on what type is being tested. |
2779 */ | 2020 */ |
2780 private Message.Builder newBuilderForField( | 2021 private Message.Builder newBuilderForField( |
2781 Message.Builder parent, Descriptors.FieldDescriptor field) { | 2022 Message.Builder parent, Descriptors.FieldDescriptor field) { |
2782 if (extensionRegistry == null) { | 2023 if (extensionRegistry == null) { |
2783 return parent.newBuilderForField(field); | 2024 return parent.newBuilderForField(field); |
2784 } else { | 2025 } else { |
2785 ExtensionRegistry.ExtensionInfo extension = | 2026 ExtensionRegistry.ExtensionInfo extension = |
2786 extensionRegistry.findImmutableExtensionByNumber( | 2027 extensionRegistry.findExtensionByNumber(field.getContainingType(), |
2787 field.getContainingType(), field.getNumber()); | 2028 field.getNumber()); |
2788 Assert.assertNotNull(extension); | 2029 Assert.assertNotNull(extension); |
2789 Assert.assertNotNull(extension.defaultInstance); | 2030 Assert.assertNotNull(extension.defaultInstance); |
2790 return extension.defaultInstance.newBuilderForType(); | 2031 return extension.defaultInstance.newBuilderForType(); |
2791 } | 2032 } |
2792 } | 2033 } |
2793 | 2034 |
2794 // ------------------------------------------------------------------- | 2035 // ------------------------------------------------------------------- |
2795 | 2036 |
2796 /** | 2037 /** |
2797 * Set every field of {@code message} to the values expected by | 2038 * Set every field of {@code message} to the values expected by |
(...skipping 141 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2939 message.setField(f("default_bool" ), false); | 2180 message.setField(f("default_bool" ), false); |
2940 message.setField(f("default_string" ), "415"); | 2181 message.setField(f("default_string" ), "415"); |
2941 message.setField(f("default_bytes" ), toBytes("416")); | 2182 message.setField(f("default_bytes" ), toBytes("416")); |
2942 | 2183 |
2943 message.setField(f("default_nested_enum" ), nestedFoo); | 2184 message.setField(f("default_nested_enum" ), nestedFoo); |
2944 message.setField(f("default_foreign_enum"), foreignFoo); | 2185 message.setField(f("default_foreign_enum"), foreignFoo); |
2945 message.setField(f("default_import_enum" ), importFoo); | 2186 message.setField(f("default_import_enum" ), importFoo); |
2946 | 2187 |
2947 message.setField(f("default_string_piece" ), "424"); | 2188 message.setField(f("default_string_piece" ), "424"); |
2948 message.setField(f("default_cord" ), "425"); | 2189 message.setField(f("default_cord" ), "425"); |
2949 | |
2950 message.setField(f("oneof_uint32" ), 601); | |
2951 message.setField(f("oneof_nested_message"), | |
2952 newBuilderForField(message, f("oneof_nested_message")) | |
2953 .setField(nestedB, 602).build()); | |
2954 message.setField(f("oneof_string" ), "603"); | |
2955 message.setField(f("oneof_bytes" ), toBytes("604")); | |
2956 } | 2190 } |
2957 | 2191 |
2958 // ------------------------------------------------------------------- | 2192 // ------------------------------------------------------------------- |
2959 | 2193 |
2960 /** | 2194 /** |
2961 * Modify the repeated fields of {@code message} to contain the values | 2195 * Modify the repeated fields of {@code message} to contain the values |
2962 * expected by {@code assertRepeatedFieldsModified()}, using the | 2196 * expected by {@code assertRepeatedFieldsModified()}, using the |
2963 * {@link Message.Builder} reflection interface. | 2197 * {@link Message.Builder} reflection interface. |
2964 */ | 2198 */ |
2965 void modifyRepeatedFieldsViaReflection(Message.Builder message) { | 2199 void modifyRepeatedFieldsViaReflection(Message.Builder message) { |
(...skipping 274 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3240 Assert.assertEquals(false, message.getField(f("default_bool" ))); | 2474 Assert.assertEquals(false, message.getField(f("default_bool" ))); |
3241 Assert.assertEquals("415", message.getField(f("default_string" ))); | 2475 Assert.assertEquals("415", message.getField(f("default_string" ))); |
3242 Assert.assertEquals(toBytes("416"), message.getField(f("default_bytes"))); | 2476 Assert.assertEquals(toBytes("416"), message.getField(f("default_bytes"))); |
3243 | 2477 |
3244 Assert.assertEquals( nestedFoo, message.getField(f("default_nested_enum" )
)); | 2478 Assert.assertEquals( nestedFoo, message.getField(f("default_nested_enum" )
)); |
3245 Assert.assertEquals(foreignFoo, message.getField(f("default_foreign_enum")
)); | 2479 Assert.assertEquals(foreignFoo, message.getField(f("default_foreign_enum")
)); |
3246 Assert.assertEquals( importFoo, message.getField(f("default_import_enum" )
)); | 2480 Assert.assertEquals( importFoo, message.getField(f("default_import_enum" )
)); |
3247 | 2481 |
3248 Assert.assertEquals("424", message.getField(f("default_string_piece"))); | 2482 Assert.assertEquals("424", message.getField(f("default_string_piece"))); |
3249 Assert.assertEquals("425", message.getField(f("default_cord"))); | 2483 Assert.assertEquals("425", message.getField(f("default_cord"))); |
3250 | |
3251 Assert.assertTrue(message.hasField(f("oneof_bytes"))); | |
3252 Assert.assertEquals(toBytes("604"), message.getField(f("oneof_bytes"))); | |
3253 | |
3254 if (extensionRegistry == null) { | |
3255 Assert.assertFalse(message.hasField(f("oneof_uint32"))); | |
3256 Assert.assertFalse(message.hasField(f("oneof_nested_message"))); | |
3257 Assert.assertFalse(message.hasField(f("oneof_string"))); | |
3258 } else { | |
3259 Assert.assertTrue(message.hasField(f("oneof_uint32"))); | |
3260 Assert.assertTrue(message.hasField(f("oneof_nested_message"))); | |
3261 Assert.assertTrue(message.hasField(f("oneof_string"))); | |
3262 Assert.assertEquals(601, message.getField(f("oneof_uint32"))); | |
3263 Assert.assertEquals(602, | |
3264 ((MessageOrBuilder) message.getField(f("oneof_nested_message"))) | |
3265 .getField(nestedB)); | |
3266 Assert.assertEquals("603", message.getField(f("oneof_string"))); | |
3267 } | |
3268 } | 2484 } |
3269 | 2485 |
3270 // ------------------------------------------------------------------- | 2486 // ------------------------------------------------------------------- |
3271 | 2487 |
3272 /** | 2488 /** |
3273 * Assert (using {@code junit.framework.Assert}} that all fields of | 2489 * Assert (using {@code junit.framework.Assert}} that all fields of |
3274 * {@code message} are cleared, and that getting the fields returns their | 2490 * {@code message} are cleared, and that getting the fields returns their |
3275 * default values, using the {@link Message} reflection interface. | 2491 * default values, using the {@link Message} reflection interface. |
3276 */ | 2492 */ |
3277 public void assertClearViaReflection(MessageOrBuilder message) { | 2493 public void assertClearViaReflection(MessageOrBuilder message) { |
(...skipping 157 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3435 Assert.assertEquals(true , message.getField(f("default_bool" ))); | 2651 Assert.assertEquals(true , message.getField(f("default_bool" ))); |
3436 Assert.assertEquals("hello", message.getField(f("default_string" ))); | 2652 Assert.assertEquals("hello", message.getField(f("default_string" ))); |
3437 Assert.assertEquals(toBytes("world"), message.getField(f("default_bytes"))
); | 2653 Assert.assertEquals(toBytes("world"), message.getField(f("default_bytes"))
); |
3438 | 2654 |
3439 Assert.assertEquals( nestedBar, message.getField(f("default_nested_enum" )
)); | 2655 Assert.assertEquals( nestedBar, message.getField(f("default_nested_enum" )
)); |
3440 Assert.assertEquals(foreignBar, message.getField(f("default_foreign_enum")
)); | 2656 Assert.assertEquals(foreignBar, message.getField(f("default_foreign_enum")
)); |
3441 Assert.assertEquals( importBar, message.getField(f("default_import_enum" )
)); | 2657 Assert.assertEquals( importBar, message.getField(f("default_import_enum" )
)); |
3442 | 2658 |
3443 Assert.assertEquals("abc", message.getField(f("default_string_piece"))); | 2659 Assert.assertEquals("abc", message.getField(f("default_string_piece"))); |
3444 Assert.assertEquals("123", message.getField(f("default_cord"))); | 2660 Assert.assertEquals("123", message.getField(f("default_cord"))); |
3445 | |
3446 Assert.assertFalse(message.hasField(f("oneof_uint32"))); | |
3447 Assert.assertFalse(message.hasField(f("oneof_nested_message"))); | |
3448 Assert.assertFalse(message.hasField(f("oneof_string"))); | |
3449 Assert.assertFalse(message.hasField(f("oneof_bytes"))); | |
3450 | |
3451 Assert.assertEquals(0, message.getField(f("oneof_uint32"))); | |
3452 Assert.assertEquals("", message.getField(f("oneof_string"))); | |
3453 Assert.assertEquals(toBytes(""), message.getField(f("oneof_bytes"))); | |
3454 } | 2661 } |
3455 | 2662 |
3456 | 2663 |
3457 // --------------------------------------------------------------- | 2664 // --------------------------------------------------------------- |
3458 | 2665 |
3459 public void assertRepeatedFieldsModifiedViaReflection( | 2666 public void assertRepeatedFieldsModifiedViaReflection( |
3460 MessageOrBuilder message) { | 2667 MessageOrBuilder message) { |
3461 // ModifyRepeatedFields only sets the second repeated element of each | 2668 // ModifyRepeatedFields only sets the second repeated element of each |
3462 // field. In addition to verifying this, we also verify that the first | 2669 // field. In addition to verifying this, we also verify that the first |
3463 // element and size were *not* modified. | 2670 // element and size were *not* modified. |
(...skipping 310 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3774 while (ancestor != null && ancestor.exists()) { | 2981 while (ancestor != null && ancestor.exists()) { |
3775 if (new File(ancestor, "src/google/protobuf").exists()) { | 2982 if (new File(ancestor, "src/google/protobuf").exists()) { |
3776 return new File(ancestor, "src/google/protobuf/testdata"); | 2983 return new File(ancestor, "src/google/protobuf/testdata"); |
3777 } | 2984 } |
3778 ancestor = ancestor.getParentFile(); | 2985 ancestor = ancestor.getParentFile(); |
3779 } | 2986 } |
3780 | 2987 |
3781 throw new RuntimeException( | 2988 throw new RuntimeException( |
3782 "Could not find golden files. This test must be run from within the " + | 2989 "Could not find golden files. This test must be run from within the " + |
3783 "protobuf source package so that it can read test data files from the " + | 2990 "protobuf source package so that it can read test data files from the " + |
3784 "C++ source tree."); | 2991 "C++ source tree: " + new File(".").getAbsolutePath()); |
3785 } | 2992 } |
3786 | 2993 |
3787 /** | 2994 /** |
3788 * @param filename The path relative to | 2995 * @param filename The path relative to |
3789 * {@link #getTestDataDir}. | 2996 * {@link #getTestDataDir}. |
3790 */ | 2997 */ |
3791 public static ByteString readBytesFromFile(String filename) { | 2998 public static ByteString readBytesFromFile(String filename) { |
3792 File fullPath = new File(getTestDataDir(), filename); | 2999 File fullPath = new File(getTestDataDir(), filename); |
3793 try { | 3000 try { |
3794 RandomAccessFile file = new RandomAccessFile(fullPath, "r"); | 3001 RandomAccessFile file = new RandomAccessFile(fullPath, "r"); |
(...skipping 10 matching lines...) Expand all Loading... |
3805 | 3012 |
3806 /** | 3013 /** |
3807 * Get the bytes of the "golden message". This is a serialized TestAllTypes | 3014 * Get the bytes of the "golden message". This is a serialized TestAllTypes |
3808 * with all fields set as they would be by | 3015 * with all fields set as they would be by |
3809 * {@link #setAllFields(TestAllTypes.Builder)}, but it is loaded from a file | 3016 * {@link #setAllFields(TestAllTypes.Builder)}, but it is loaded from a file |
3810 * on disk rather than generated dynamically. The file is actually generated | 3017 * on disk rather than generated dynamically. The file is actually generated |
3811 * by C++ code, so testing against it verifies compatibility with C++. | 3018 * by C++ code, so testing against it verifies compatibility with C++. |
3812 */ | 3019 */ |
3813 public static ByteString getGoldenMessage() { | 3020 public static ByteString getGoldenMessage() { |
3814 if (goldenMessage == null) { | 3021 if (goldenMessage == null) { |
3815 goldenMessage = readBytesFromFile("golden_message_oneof_implemented"); | 3022 goldenMessage = readBytesFromFile("golden_message"); |
3816 } | 3023 } |
3817 return goldenMessage; | 3024 return goldenMessage; |
3818 } | 3025 } |
3819 private static ByteString goldenMessage = null; | 3026 private static ByteString goldenMessage = null; |
3820 | 3027 |
3821 /** | 3028 /** |
3822 * Get the bytes of the "golden packed fields message". This is a serialized | 3029 * Get the bytes of the "golden packed fields message". This is a serialized |
3823 * TestPackedTypes with all fields set as they would be by | 3030 * TestPackedTypes with all fields set as they would be by |
3824 * {@link #setPackedFields(TestPackedTypes.Builder)}, but it is loaded from a | 3031 * {@link #setPackedFields(TestPackedTypes.Builder)}, but it is loaded from a |
3825 * file on disk rather than generated dynamically. The file is actually | 3032 * file on disk rather than generated dynamically. The file is actually |
3826 * generated by C++ code, so testing against it verifies compatibility with | 3033 * generated by C++ code, so testing against it verifies compatibility with |
3827 * C++. | 3034 * C++. |
3828 */ | 3035 */ |
3829 public static ByteString getGoldenPackedFieldsMessage() { | 3036 public static ByteString getGoldenPackedFieldsMessage() { |
3830 if (goldenPackedFieldsMessage == null) { | 3037 if (goldenPackedFieldsMessage == null) { |
3831 goldenPackedFieldsMessage = | 3038 goldenPackedFieldsMessage = |
3832 readBytesFromFile("golden_packed_fields_message"); | 3039 readBytesFromFile("golden_packed_fields_message"); |
3833 } | 3040 } |
3834 return goldenPackedFieldsMessage; | 3041 return goldenPackedFieldsMessage; |
3835 } | 3042 } |
3836 private static ByteString goldenPackedFieldsMessage = null; | 3043 private static ByteString goldenPackedFieldsMessage = null; |
3837 | 3044 |
| 3045 public static abstract class HackMessage extends GeneratedMessage { |
| 3046 public interface MyInterface extends BuilderParent { |
| 3047 } |
| 3048 } |
3838 /** | 3049 /** |
3839 * Mock implementation of {@link GeneratedMessage.BuilderParent} for testing. | 3050 * Mock implementation of {@link GeneratedMessage.BuilderParent} for testing. |
3840 * | 3051 * |
3841 * @author jonp@google.com (Jon Perlow) | 3052 * @author jonp@google.com (Jon Perlow) |
3842 */ | 3053 */ |
3843 public static class MockBuilderParent | 3054 public static class MockBuilderParent |
3844 implements GeneratedMessage.BuilderParent { | 3055 implements HackMessage.MyInterface { |
3845 | 3056 |
3846 private int invalidations; | 3057 private int invalidations; |
3847 | 3058 |
3848 @Override | 3059 //@Override (Java 1.6 override semantics, but we must support 1.5) |
3849 public void markDirty() { | 3060 public void markDirty() { |
3850 invalidations++; | 3061 invalidations++; |
3851 } | 3062 } |
3852 | 3063 |
3853 public int getInvalidationCount() { | 3064 public int getInvalidationCount() { |
3854 return invalidations; | 3065 return invalidations; |
3855 } | 3066 } |
3856 } | 3067 } |
3857 } | 3068 } |
OLD | NEW |