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

Side by Side Diff: third_party/WebKit/LayoutTests/mojo/union.html

Issue 2796253002: Associated Message Validation (Closed)
Patch Set: Validate payloadInterfaceIds before getting it. Use [0] for dimensions for validateArrayPointer. Ca… Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 <!DOCTYPE html> 1 <!DOCTYPE html>
2 <script src="../resources/testharness.js"></script> 2 <script src="../resources/testharness.js"></script>
3 <script src="../resources/testharnessreport.js"></script> 3 <script src="../resources/testharnessreport.js"></script>
4 <script src="../resources/testharness-helpers.js"></script> 4 <script src="../resources/testharness-helpers.js"></script>
5 <script src="../resources/mojo-helpers.js"></script> 5 <script src="../resources/mojo-helpers.js"></script>
6 <script> 6 <script>
7 'use strict'; 7 'use strict';
8 8
9 setup({ explicit_done: true }); 9 setup({ explicit_done: true });
10 10
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
46 }, 'constructors'); 46 }, 'constructors');
47 47
48 function structEncodeDecode(struct) { 48 function structEncodeDecode(struct) {
49 var structClass = struct.constructor; 49 var structClass = struct.constructor;
50 var builder = new codec.MessageBuilder(1234, structClass.encodedSize); 50 var builder = new codec.MessageBuilder(1234, structClass.encodedSize);
51 builder.encodeStruct(structClass, struct); 51 builder.encodeStruct(structClass, struct);
52 52
53 var message = builder.finish(); 53 var message = builder.finish();
54 54
55 var messageValidator = new validator.Validator(message); 55 var messageValidator = new validator.Validator(message);
56 var err = structClass.validate(messageValidator, codec.kMessageHeaderSize); 56 var err = structClass.validate(messageValidator, codec.kMessageV0HeaderSize) ;
57 assert_equals(err, validator.validationError.NONE); 57 assert_equals(err, validator.validationError.NONE);
58 58
59 var reader = new codec.MessageReader(message); 59 var reader = new codec.MessageReader(message);
60 var view = reader.decoder.buffer.dataView; 60 var view = reader.decoder.buffer.dataView;
61 61
62 return reader.decodeStruct(structClass); 62 return reader.decodeStruct(structClass);
63 } 63 }
64 64
65 test(() => { 65 test(() => {
66 var s = new unions.WrapperStruct({ 66 var s = new unions.WrapperStruct({
(...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after
145 }, 'nested unions encoding'); 145 }, 'nested unions encoding');
146 146
147 function structValidate(struct) { 147 function structValidate(struct) {
148 var structClass = struct.constructor; 148 var structClass = struct.constructor;
149 var builder = new codec.MessageBuilder(1234, structClass.encodedSize); 149 var builder = new codec.MessageBuilder(1234, structClass.encodedSize);
150 builder.encodeStruct(structClass, struct); 150 builder.encodeStruct(structClass, struct);
151 151
152 var message = builder.finish(); 152 var message = builder.finish();
153 153
154 var messageValidator = new validator.Validator(message); 154 var messageValidator = new validator.Validator(message);
155 return structClass.validate(messageValidator, codec.kMessageHeaderSize); 155 return structClass.validate(messageValidator, codec.kMessageV0HeaderSize);
156 } 156 }
157 157
158 test(() => { 158 test(() => {
159 var s = new unions.WrapperStruct({ 159 var s = new unions.WrapperStruct({
160 object_union: new unions.ObjectUnion({ 160 object_union: new unions.ObjectUnion({
161 f_dummy: null})}); 161 f_dummy: null})});
162 162
163 var err = structValidate(s); 163 var err = structValidate(s);
164 assert_equals(err, validator.validationError.UNEXPECTED_NULL_POINTER); 164 assert_equals(err, validator.validationError.UNEXPECTED_NULL_POINTER);
165 165
(...skipping 18 matching lines...) Expand all
184 }); 184 });
185 185
186 var err = structValidate(s); 186 var err = structValidate(s);
187 assert_equals(err, validator.validationError.UNEXPECTED_NULL_UNION); 187 assert_equals(err, validator.validationError.UNEXPECTED_NULL_UNION);
188 }, 'null union validation'); 188 }, 'null union validation');
189 189
190 done(); 190 done();
191 191
192 }); 192 });
193 </script> 193 </script>
OLDNEW
« no previous file with comments | « third_party/WebKit/LayoutTests/mojo/struct.html ('k') | third_party/WebKit/LayoutTests/vibration/vibration-expected.txt » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698