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

Unified Diff: mojo/public/tools/bindings/pylib/mojom/generate/pack_tests.py

Issue 437643002: Support nullable types in mojom. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: changes according to darin's suggestions Created 6 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: mojo/public/tools/bindings/pylib/mojom/generate/pack_tests.py
diff --git a/mojo/public/tools/bindings/pylib/mojom/generate/pack_tests.py b/mojo/public/tools/bindings/pylib/mojom/generate/pack_tests.py
index 4e61004e5f41b8ab8a9f9d4609ddfe6830246eab..2d5bddc9ae0859f9dd9908f66cec2f38f1107240 100644
--- a/mojo/public/tools/bindings/pylib/mojom/generate/pack_tests.py
+++ b/mojo/public/tools/bindings/pylib/mojom/generate/pack_tests.py
@@ -88,17 +88,33 @@ def TestPaddingPackedOverflow():
return TestSequence(kinds, fields, offsets)
+def TestNullableTypes():
+ kinds = (mojom.MakeNullableKind(mojom.STRING),
+ mojom.MakeNullableKind(mojom.HANDLE),
+ mojom.MakeNullableKind(mojom.Struct('test_struct')),
+ mojom.MakeNullableKind(mojom.DCPIPE),
+ mojom.MakeNullableKind(mojom.Array()),
+ mojom.MakeNullableKind(mojom.DPPIPE),
+ mojom.MakeNullableKind(mojom.FixedArray(5)),
+ mojom.MakeNullableKind(mojom.MSGPIPE),
+ mojom.MakeNullableKind(mojom.Interface('test_inteface')),
+ mojom.MakeNullableKind(mojom.SHAREDBUFFER),
+ mojom.MakeNullableKind(mojom.InterfaceRequest()))
+ fields = (1, 2, 4, 3, 5, 6, 8, 7, 9, 10, 11)
+ offsets = (0, 8, 12, 16, 24, 32, 36, 40, 48, 52, 56)
+ return TestSequence(kinds, fields, offsets)
+
+
def TestAllTypes():
- struct = mojom.Struct('test')
- array = mojom.Array()
return TestSequence(
(mojom.BOOL, mojom.INT8, mojom.STRING, mojom.UINT8,
mojom.INT16, mojom.DOUBLE, mojom.UINT16,
mojom.INT32, mojom.UINT32, mojom.INT64,
mojom.FLOAT, mojom.STRING, mojom.HANDLE,
- mojom.UINT64, mojom.Struct('test'), mojom.Array()),
- (1, 2, 4, 5, 7, 3, 6, 8, 9, 10, 11, 13, 12, 14, 15, 16, 17),
- (0, 1, 2, 4, 6, 8, 16, 24, 28, 32, 40, 44, 48, 56, 64, 72, 80))
+ mojom.UINT64, mojom.Struct('test'), mojom.Array(),
+ mojom.MakeNullableKind(mojom.STRING)),
+ (1, 2, 4, 5, 7, 3, 6, 8, 9, 10, 11, 13, 12, 14, 15, 16, 17, 18),
+ (0, 1, 2, 4, 6, 8, 16, 24, 28, 32, 40, 44, 48, 56, 64, 72, 80, 88))
def TestPaddingPackedOutOfOrderByOrdinal():
@@ -165,6 +181,7 @@ def Main(args):
errors += RunTest(TestPaddingPackedInOrder)
errors += RunTest(TestPaddingPackedOutOfOrder)
errors += RunTest(TestPaddingPackedOverflow)
+ errors += RunTest(TestNullableTypes)
errors += RunTest(TestAllTypes)
errors += RunTest(TestPaddingPackedOutOfOrderByOrdinal)
errors += RunTest(TestBools)

Powered by Google App Engine
This is Rietveld 408576698