blob: b08010b48a57fa80904fb6682dfa51fd344f1704 [file] [log] [blame]
// Copyright 2020 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
success("RecursiveOptionalStructUnderLimit") {
// gidl-format off
value = RecursiveOptionalStruct { // 0
inner: RecursiveOptionalStruct { // 1
inner: RecursiveOptionalStruct { // 2
inner: RecursiveOptionalStruct { // 3
inner: RecursiveOptionalStruct { // 4
inner: RecursiveOptionalStruct { // 5
inner: RecursiveOptionalStruct { // 6
inner: RecursiveOptionalStruct { // 7
inner: RecursiveOptionalStruct { // 8
inner: RecursiveOptionalStruct { // 9
inner: RecursiveOptionalStruct { // 10
inner: RecursiveOptionalStruct { // 11
inner: RecursiveOptionalStruct { // 12
inner: RecursiveOptionalStruct { // 13
inner: RecursiveOptionalStruct { // 14
inner: RecursiveOptionalStruct { // 15
inner: RecursiveOptionalStruct { // 16
inner: RecursiveOptionalStruct { // 17
inner: RecursiveOptionalStruct { // 18
inner: RecursiveOptionalStruct { // 19
inner: RecursiveOptionalStruct { // 20
inner: RecursiveOptionalStruct { // 21
inner: RecursiveOptionalStruct { // 22
inner: RecursiveOptionalStruct { // 23
inner: RecursiveOptionalStruct { // 24
inner: RecursiveOptionalStruct { // 25
inner: RecursiveOptionalStruct { // 26
inner: RecursiveOptionalStruct { // 27
inner: RecursiveOptionalStruct { // 28
inner: RecursiveOptionalStruct { // 29
inner: RecursiveOptionalStruct { // 30
inner: RecursiveOptionalStruct { // 31
inner: RecursiveOptionalStruct { // 32
inner: null,
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
},
// gidl-format on
bytes = {
v1, v2 = [
repeat(0xff):256, // 0 - 31
repeat(0x00):8, // 32
],
},
}
encode_failure("RecursiveOptionalStructExceedLimit") {
// gidl-format off
value = RecursiveOptionalStruct { // 0
inner: RecursiveOptionalStruct { // 1
inner: RecursiveOptionalStruct { // 2
inner: RecursiveOptionalStruct { // 3
inner: RecursiveOptionalStruct { // 4
inner: RecursiveOptionalStruct { // 5
inner: RecursiveOptionalStruct { // 6
inner: RecursiveOptionalStruct { // 7
inner: RecursiveOptionalStruct { // 8
inner: RecursiveOptionalStruct { // 9
inner: RecursiveOptionalStruct { // 10
inner: RecursiveOptionalStruct { // 11
inner: RecursiveOptionalStruct { // 12
inner: RecursiveOptionalStruct { // 13
inner: RecursiveOptionalStruct { // 14
inner: RecursiveOptionalStruct { // 15
inner: RecursiveOptionalStruct { // 16
inner: RecursiveOptionalStruct { // 17
inner: RecursiveOptionalStruct { // 18
inner: RecursiveOptionalStruct { // 19
inner: RecursiveOptionalStruct { // 20
inner: RecursiveOptionalStruct { // 21
inner: RecursiveOptionalStruct { // 22
inner: RecursiveOptionalStruct { // 23
inner: RecursiveOptionalStruct { // 24
inner: RecursiveOptionalStruct { // 25
inner: RecursiveOptionalStruct { // 26
inner: RecursiveOptionalStruct { // 27
inner: RecursiveOptionalStruct { // 28
inner: RecursiveOptionalStruct { // 29
inner: RecursiveOptionalStruct { // 30
inner: RecursiveOptionalStruct { // 31
inner: RecursiveOptionalStruct { // 32
inner: RecursiveOptionalStruct { // 33
inner: null,
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
},
// gidl-format on
err = EXCEEDED_MAX_OUT_OF_LINE_DEPTH,
}
decode_failure("RecursiveOptionalStructExceedLimit") {
type = RecursiveOptionalStruct,
bytes = {
v1, v2 = [
repeat(0xff):264, // 0 - 32
repeat(0x00):8, // 32
],
},
err = EXCEEDED_MAX_OUT_OF_LINE_DEPTH,
}
success("RecursiveOptionalStructArrayWrapperUnderLimit") {
// gidl-format off
value = RecursiveOptionalStructArrayWrapper { // 0
arr: [ // 0
RecursiveOptionalStruct { // 0
inner: RecursiveOptionalStruct { // 1
inner: RecursiveOptionalStruct { // 2
inner: RecursiveOptionalStruct { // 3
inner: RecursiveOptionalStruct { // 4
inner: RecursiveOptionalStruct { // 5
inner: RecursiveOptionalStruct { // 6
inner: RecursiveOptionalStruct { // 7
inner: RecursiveOptionalStruct { // 8
inner: RecursiveOptionalStruct { // 9
inner: RecursiveOptionalStruct { // 10
inner: RecursiveOptionalStruct { // 11
inner: RecursiveOptionalStruct { // 12
inner: RecursiveOptionalStruct { // 13
inner: RecursiveOptionalStruct { // 14
inner: RecursiveOptionalStruct { // 15
inner: RecursiveOptionalStruct { // 16
inner: RecursiveOptionalStruct { // 17
inner: RecursiveOptionalStruct { // 18
inner: RecursiveOptionalStruct { // 19
inner: RecursiveOptionalStruct { // 20
inner: RecursiveOptionalStruct { // 21
inner: RecursiveOptionalStruct { // 22
inner: RecursiveOptionalStruct { // 23
inner: RecursiveOptionalStruct { // 24
inner: RecursiveOptionalStruct { // 25
inner: RecursiveOptionalStruct { // 26
inner: RecursiveOptionalStruct { // 27
inner: RecursiveOptionalStruct { // 28
inner: RecursiveOptionalStruct { // 29
inner: RecursiveOptionalStruct { // 30
inner: RecursiveOptionalStruct { // 31
inner: RecursiveOptionalStruct { // 32
inner: null,
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
]
},
// gidl-format on
bytes = {
v1, v2 = [
repeat(0xff):256, // 0 - 31
repeat(0x00):8, // 32
],
},
}
encode_failure("RecursiveOptionalStructArrayWrapperExceedLimit") {
// gidl-format off
value = RecursiveOptionalStructArrayWrapper { // 0
arr: [ // 0
RecursiveOptionalStruct { // 0
inner: RecursiveOptionalStruct { // 1
inner: RecursiveOptionalStruct { // 2
inner: RecursiveOptionalStruct { // 3
inner: RecursiveOptionalStruct { // 4
inner: RecursiveOptionalStruct { // 5
inner: RecursiveOptionalStruct { // 6
inner: RecursiveOptionalStruct { // 7
inner: RecursiveOptionalStruct { // 8
inner: RecursiveOptionalStruct { // 9
inner: RecursiveOptionalStruct { // 10
inner: RecursiveOptionalStruct { // 11
inner: RecursiveOptionalStruct { // 12
inner: RecursiveOptionalStruct { // 13
inner: RecursiveOptionalStruct { // 14
inner: RecursiveOptionalStruct { // 15
inner: RecursiveOptionalStruct { // 16
inner: RecursiveOptionalStruct { // 17
inner: RecursiveOptionalStruct { // 18
inner: RecursiveOptionalStruct { // 19
inner: RecursiveOptionalStruct { // 20
inner: RecursiveOptionalStruct { // 21
inner: RecursiveOptionalStruct { // 22
inner: RecursiveOptionalStruct { // 23
inner: RecursiveOptionalStruct { // 24
inner: RecursiveOptionalStruct { // 25
inner: RecursiveOptionalStruct { // 26
inner: RecursiveOptionalStruct { // 27
inner: RecursiveOptionalStruct { // 28
inner: RecursiveOptionalStruct { // 29
inner: RecursiveOptionalStruct { // 30
inner: RecursiveOptionalStruct { // 31
inner: RecursiveOptionalStruct { // 32
inner: RecursiveOptionalStruct { // 33
inner: null,
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
]
},
// gidl-format on
err = EXCEEDED_MAX_OUT_OF_LINE_DEPTH,
}
decode_failure("RecursiveOptionalStructArrayWrapperExceedLimit") {
type = RecursiveOptionalStructArrayWrapper,
bytes = {
v1, v2 = [
repeat(0xff):264, // 0 - 32
repeat(0x00):8, // 32
],
},
err = EXCEEDED_MAX_OUT_OF_LINE_DEPTH,
}
success("RecursiveOptionalAndUnionUnderLimit") {
// gidl-format off
value = RecursiveOptionalAndUnionStruct { // 0
u: RecursiveOptionalAndUnion { // 0
recursive_optional: RecursiveOptionalStruct { // 1
inner: RecursiveOptionalStruct { // 2
inner: RecursiveOptionalStruct { // 3
inner: RecursiveOptionalStruct { // 4
inner: RecursiveOptionalStruct { // 5
inner: RecursiveOptionalStruct { // 6
inner: RecursiveOptionalStruct { // 7
inner: RecursiveOptionalStruct { // 8
inner: RecursiveOptionalStruct { // 9
inner: RecursiveOptionalStruct { // 10
inner: RecursiveOptionalStruct { // 11
inner: RecursiveOptionalStruct { // 12
inner: RecursiveOptionalStruct { // 13
inner: RecursiveOptionalStruct { // 14
inner: RecursiveOptionalStruct { // 15
inner: RecursiveOptionalStruct { // 16
inner: RecursiveOptionalStruct { // 17
inner: RecursiveOptionalStruct { // 18
inner: RecursiveOptionalStruct { // 19
inner: RecursiveOptionalStruct { // 20
inner: RecursiveOptionalStruct { // 21
inner: RecursiveOptionalStruct { // 22
inner: RecursiveOptionalStruct { // 23
inner: RecursiveOptionalStruct { // 24
inner: RecursiveOptionalStruct { // 25
inner: RecursiveOptionalStruct { // 26
inner: RecursiveOptionalStruct { // 27
inner: RecursiveOptionalStruct { // 28
inner: RecursiveOptionalStruct { // 29
inner: RecursiveOptionalStruct { // 30
inner: RecursiveOptionalStruct { // 31
inner: RecursiveOptionalStruct { // 32
inner: null,
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
},
// gidl-format on
bytes = {
v1 = [
num(1):4, padding:4, // ordinal, padding
num(256):4, num(0):4, // num bytes, num handles
repeat(0xff):8, // union data
repeat(0xff):248, // 1 - 31
repeat(0x00):8, // 32
],
v2 = [
num(1):4, padding:4, // ordinal, padding
num(256):4, num(0):2, num(0):2, // num bytes, num handles, inlined?
repeat(0xff):248, // 1 - 31
repeat(0x00):8, // 32
],
},
}
encode_failure("RecursiveOptionalAndUnionExceedLimit") {
// gidl-format off
value = RecursiveOptionalAndUnionStruct { // 0
u: RecursiveOptionalAndUnion { // 0
recursive_optional: RecursiveOptionalStruct { // 1
inner: RecursiveOptionalStruct { // 2
inner: RecursiveOptionalStruct { // 3
inner: RecursiveOptionalStruct { // 4
inner: RecursiveOptionalStruct { // 5
inner: RecursiveOptionalStruct { // 6
inner: RecursiveOptionalStruct { // 7
inner: RecursiveOptionalStruct { // 8
inner: RecursiveOptionalStruct { // 9
inner: RecursiveOptionalStruct { // 10
inner: RecursiveOptionalStruct { // 11
inner: RecursiveOptionalStruct { // 12
inner: RecursiveOptionalStruct { // 13
inner: RecursiveOptionalStruct { // 14
inner: RecursiveOptionalStruct { // 15
inner: RecursiveOptionalStruct { // 16
inner: RecursiveOptionalStruct { // 17
inner: RecursiveOptionalStruct { // 18
inner: RecursiveOptionalStruct { // 19
inner: RecursiveOptionalStruct { // 20
inner: RecursiveOptionalStruct { // 21
inner: RecursiveOptionalStruct { // 22
inner: RecursiveOptionalStruct { // 23
inner: RecursiveOptionalStruct { // 24
inner: RecursiveOptionalStruct { // 25
inner: RecursiveOptionalStruct { // 26
inner: RecursiveOptionalStruct { // 27
inner: RecursiveOptionalStruct { // 28
inner: RecursiveOptionalStruct { // 29
inner: RecursiveOptionalStruct { // 30
inner: RecursiveOptionalStruct { // 31
inner: RecursiveOptionalStruct { // 32
inner: RecursiveOptionalStruct { // 33
inner: null,
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
},
// gidl-format on
err = EXCEEDED_MAX_OUT_OF_LINE_DEPTH,
}
decode_failure("RecursiveOptionalAndUnionExceedLimit") {
type = RecursiveOptionalAndUnionStruct,
bytes = {
v1 = [
num(1):4, padding:4, // ordinal, padding
num(264):4, num(0):4, // num bytes, num handles
repeat(0xff):8, // union data
repeat(0xff):256, // 1 - 32
repeat(0x00):8, // 33
],
v2 = [
num(1):4, padding:4, // ordinal, padding
num(264):4, num(0):2, num(0):2, // num bytes, num handles, inlined?
repeat(0xff):256, // 1 - 32
repeat(0x00):8, // 33
],
},
err = EXCEEDED_MAX_OUT_OF_LINE_DEPTH,
}
success("RecursiveOptionalAndTableUnderLimit") {
// gidl-format off
value = RecursiveOptionalAndTableStruct { // 0
t: RecursiveOptionalAndTable { // 0
recursive_optional: RecursiveOptionalStruct { // 2
inner: RecursiveOptionalStruct { // 3
inner: RecursiveOptionalStruct { // 4
inner: RecursiveOptionalStruct { // 5
inner: RecursiveOptionalStruct { // 6
inner: RecursiveOptionalStruct { // 7
inner: RecursiveOptionalStruct { // 8
inner: RecursiveOptionalStruct { // 9
inner: RecursiveOptionalStruct { // 10
inner: RecursiveOptionalStruct { // 11
inner: RecursiveOptionalStruct { // 12
inner: RecursiveOptionalStruct { // 13
inner: RecursiveOptionalStruct { // 14
inner: RecursiveOptionalStruct { // 15
inner: RecursiveOptionalStruct { // 16
inner: RecursiveOptionalStruct { // 17
inner: RecursiveOptionalStruct { // 18
inner: RecursiveOptionalStruct { // 19
inner: RecursiveOptionalStruct { // 20
inner: RecursiveOptionalStruct { // 21
inner: RecursiveOptionalStruct { // 22
inner: RecursiveOptionalStruct { // 23
inner: RecursiveOptionalStruct { // 24
inner: RecursiveOptionalStruct { // 25
inner: RecursiveOptionalStruct { // 26
inner: RecursiveOptionalStruct { // 27
inner: RecursiveOptionalStruct { // 28
inner: RecursiveOptionalStruct { // 29
inner: RecursiveOptionalStruct { // 30
inner: RecursiveOptionalStruct { // 31
inner: RecursiveOptionalStruct { // 32
inner: null,
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
},
// gidl-format on
bytes = {
v1 = [
num(1):8, // table max ordinal
repeat(0xff):8, // table vector body
num(248):4, num(0):4, // num bytes, num handles
repeat(0xff):8, // envelope data
repeat(0xff):240, // 2 - 31
repeat(0x00):8, // 32
],
v2 = [
num(1):8, // table max ordinal
repeat(0xff):8, // table vector body
num(248):4, num(0):4, // num bytes, num handles
repeat(0xff):240, // 2 - 31
repeat(0x00):8, // 32
],
},
}
encode_failure("RecursiveOptionalAndTableExceedLimit") {
// gidl-format off
value = RecursiveOptionalAndTableStruct { // 0
t: RecursiveOptionalAndTable { // 0
recursive_optional: RecursiveOptionalStruct { // 2
inner: RecursiveOptionalStruct { // 3
inner: RecursiveOptionalStruct { // 4
inner: RecursiveOptionalStruct { // 5
inner: RecursiveOptionalStruct { // 6
inner: RecursiveOptionalStruct { // 7
inner: RecursiveOptionalStruct { // 8
inner: RecursiveOptionalStruct { // 9
inner: RecursiveOptionalStruct { // 10
inner: RecursiveOptionalStruct { // 11
inner: RecursiveOptionalStruct { // 12
inner: RecursiveOptionalStruct { // 13
inner: RecursiveOptionalStruct { // 14
inner: RecursiveOptionalStruct { // 15
inner: RecursiveOptionalStruct { // 16
inner: RecursiveOptionalStruct { // 17
inner: RecursiveOptionalStruct { // 18
inner: RecursiveOptionalStruct { // 19
inner: RecursiveOptionalStruct { // 20
inner: RecursiveOptionalStruct { // 21
inner: RecursiveOptionalStruct { // 22
inner: RecursiveOptionalStruct { // 23
inner: RecursiveOptionalStruct { // 24
inner: RecursiveOptionalStruct { // 25
inner: RecursiveOptionalStruct { // 26
inner: RecursiveOptionalStruct { // 27
inner: RecursiveOptionalStruct { // 28
inner: RecursiveOptionalStruct { // 29
inner: RecursiveOptionalStruct { // 30
inner: RecursiveOptionalStruct { // 31
inner: RecursiveOptionalStruct { // 32
inner: RecursiveOptionalStruct { // 33
inner: null,
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
},
// gidl-format on
err = EXCEEDED_MAX_OUT_OF_LINE_DEPTH,
}
decode_failure("RecursiveOptionalAndTableExceedLimit") {
type = RecursiveOptionalAndTableStruct,
bytes = {
v1 = [
num(1):8, // table max ordinal
repeat(0xff):8, // table vector body
num(256):4, num(0):4, // num bytes, num handles
repeat(0xff):8, // envelope data
repeat(0xff):248, // 2 - 32
repeat(0x00):8, // 33
],
},
err = EXCEEDED_MAX_OUT_OF_LINE_DEPTH,
}
success("RecursiveOptionalAndVectorUnderLimit") {
// gidl-format off
value = RecursiveOptionalAndVectorStruct { // 0
vec: [ RecursiveOptionalStruct { // 1
inner: RecursiveOptionalStruct { // 2
inner: RecursiveOptionalStruct { // 3
inner: RecursiveOptionalStruct { // 4
inner: RecursiveOptionalStruct { // 5
inner: RecursiveOptionalStruct { // 6
inner: RecursiveOptionalStruct { // 7
inner: RecursiveOptionalStruct { // 8
inner: RecursiveOptionalStruct { // 9
inner: RecursiveOptionalStruct { // 10
inner: RecursiveOptionalStruct { // 11
inner: RecursiveOptionalStruct { // 12
inner: RecursiveOptionalStruct { // 13
inner: RecursiveOptionalStruct { // 14
inner: RecursiveOptionalStruct { // 15
inner: RecursiveOptionalStruct { // 16
inner: RecursiveOptionalStruct { // 17
inner: RecursiveOptionalStruct { // 18
inner: RecursiveOptionalStruct { // 19
inner: RecursiveOptionalStruct { // 20
inner: RecursiveOptionalStruct { // 21
inner: RecursiveOptionalStruct { // 22
inner: RecursiveOptionalStruct { // 23
inner: RecursiveOptionalStruct { // 24
inner: RecursiveOptionalStruct { // 25
inner: RecursiveOptionalStruct { // 26
inner: RecursiveOptionalStruct { // 27
inner: RecursiveOptionalStruct { // 28
inner: RecursiveOptionalStruct { // 29
inner: RecursiveOptionalStruct { // 30
inner: RecursiveOptionalStruct { // 31
inner: RecursiveOptionalStruct { // 32
inner: null,
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
]
},
// gidl-format on
bytes = {
v1, v2 = [
num(1):8, // vector count
repeat(0xff):8, // vector data
repeat(0xff):248, // 1 - 31
repeat(0x00):8, // 32
],
},
}
encode_failure("RecursiveOptionalAndVectorExceedLimit") {
// gidl-format off
value = RecursiveOptionalAndVectorStruct { // 0
vec: [ RecursiveOptionalStruct { // 1
inner: RecursiveOptionalStruct { // 2
inner: RecursiveOptionalStruct { // 3
inner: RecursiveOptionalStruct { // 4
inner: RecursiveOptionalStruct { // 5
inner: RecursiveOptionalStruct { // 6
inner: RecursiveOptionalStruct { // 7
inner: RecursiveOptionalStruct { // 8
inner: RecursiveOptionalStruct { // 9
inner: RecursiveOptionalStruct { // 10
inner: RecursiveOptionalStruct { // 11
inner: RecursiveOptionalStruct { // 12
inner: RecursiveOptionalStruct { // 13
inner: RecursiveOptionalStruct { // 14
inner: RecursiveOptionalStruct { // 15
inner: RecursiveOptionalStruct { // 16
inner: RecursiveOptionalStruct { // 17
inner: RecursiveOptionalStruct { // 18
inner: RecursiveOptionalStruct { // 19
inner: RecursiveOptionalStruct { // 20
inner: RecursiveOptionalStruct { // 21
inner: RecursiveOptionalStruct { // 22
inner: RecursiveOptionalStruct { // 23
inner: RecursiveOptionalStruct { // 24
inner: RecursiveOptionalStruct { // 25
inner: RecursiveOptionalStruct { // 26
inner: RecursiveOptionalStruct { // 27
inner: RecursiveOptionalStruct { // 28
inner: RecursiveOptionalStruct { // 29
inner: RecursiveOptionalStruct { // 30
inner: RecursiveOptionalStruct { // 31
inner: RecursiveOptionalStruct { // 32
inner: RecursiveOptionalStruct { // 33
inner: null,
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
]
},
// gidl-format on
err = EXCEEDED_MAX_OUT_OF_LINE_DEPTH,
}
decode_failure("RecursiveOptionalAndVectorExceedLimit") {
type = RecursiveOptionalAndVectorStruct,
bytes = {
v1, v2 = [
num(1):8, // vector count
repeat(0xff):8, // vector data
repeat(0xff):256, // 1 - 32
repeat(0x00):8, // 33
],
},
err = EXCEEDED_MAX_OUT_OF_LINE_DEPTH,
}
success("RecursiveOptionalStructWithStringUnderLimit") {
// gidl-format off
value = RecursiveOptionalStructWithString { // 0
inner: RecursiveOptionalStructWithString { // 1
inner: RecursiveOptionalStructWithString { // 2
inner: RecursiveOptionalStructWithString { // 3
inner: RecursiveOptionalStructWithString { // 4
inner: RecursiveOptionalStructWithString { // 5
inner: RecursiveOptionalStructWithString { // 6
inner: RecursiveOptionalStructWithString { // 7
inner: RecursiveOptionalStructWithString { // 8
inner: RecursiveOptionalStructWithString { // 9
inner: RecursiveOptionalStructWithString { // 10
inner: RecursiveOptionalStructWithString { // 11
inner: RecursiveOptionalStructWithString { // 12
inner: RecursiveOptionalStructWithString { // 13
inner: RecursiveOptionalStructWithString { // 14
inner: RecursiveOptionalStructWithString { // 15
inner: RecursiveOptionalStructWithString { // 16
inner: RecursiveOptionalStructWithString { // 17
inner: RecursiveOptionalStructWithString { // 18
inner: RecursiveOptionalStructWithString { // 19
inner: RecursiveOptionalStructWithString { // 20
inner: RecursiveOptionalStructWithString { // 21
inner: RecursiveOptionalStructWithString { // 22
inner: RecursiveOptionalStructWithString { // 23
inner: RecursiveOptionalStructWithString { // 24
inner: RecursiveOptionalStructWithString { // 25
inner: RecursiveOptionalStructWithString { // 26
inner: RecursiveOptionalStructWithString { // 27
inner: RecursiveOptionalStructWithString { // 28
inner: RecursiveOptionalStructWithString { // 29
inner: RecursiveOptionalStructWithString { // 30
inner: RecursiveOptionalStructWithString { // 31
str: "X" // 32
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
},
// gidl-format on
bytes = {
v1, v2 = [
// 0
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 1
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 2
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 3
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 4
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 5
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 6
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 7
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 8
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 9
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 10
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 11
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 12
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 13
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 14
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 15
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 16
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 17
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 18
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 19
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 20
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 21
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 22
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 23
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 24
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 25
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 26
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 27
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 28
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 29
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 30
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 31
repeat(0x00):8, // inner,
num(1):8, // string count
repeat(0xff):8, // string body
// 32
'X', padding:7,
],
},
}
encode_failure("RecursiveOptionalStructWithStringExceedLimit") {
// gidl-format off
value = RecursiveOptionalStructWithString { // 0
inner: RecursiveOptionalStructWithString { // 1
inner: RecursiveOptionalStructWithString { // 2
inner: RecursiveOptionalStructWithString { // 3
inner: RecursiveOptionalStructWithString { // 4
inner: RecursiveOptionalStructWithString { // 5
inner: RecursiveOptionalStructWithString { // 6
inner: RecursiveOptionalStructWithString { // 7
inner: RecursiveOptionalStructWithString { // 8
inner: RecursiveOptionalStructWithString { // 9
inner: RecursiveOptionalStructWithString { // 10
inner: RecursiveOptionalStructWithString { // 11
inner: RecursiveOptionalStructWithString { // 12
inner: RecursiveOptionalStructWithString { // 13
inner: RecursiveOptionalStructWithString { // 14
inner: RecursiveOptionalStructWithString { // 15
inner: RecursiveOptionalStructWithString { // 16
inner: RecursiveOptionalStructWithString { // 17
inner: RecursiveOptionalStructWithString { // 18
inner: RecursiveOptionalStructWithString { // 19
inner: RecursiveOptionalStructWithString { // 20
inner: RecursiveOptionalStructWithString { // 21
inner: RecursiveOptionalStructWithString { // 22
inner: RecursiveOptionalStructWithString { // 23
inner: RecursiveOptionalStructWithString { // 24
inner: RecursiveOptionalStructWithString { // 25
inner: RecursiveOptionalStructWithString { // 26
inner: RecursiveOptionalStructWithString { // 27
inner: RecursiveOptionalStructWithString { // 28
inner: RecursiveOptionalStructWithString { // 29
inner: RecursiveOptionalStructWithString { // 30
inner: RecursiveOptionalStructWithString { // 31
inner: RecursiveOptionalStructWithString { // 32
str: "X" // 33
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
},
// gidl-format on
err = EXCEEDED_MAX_OUT_OF_LINE_DEPTH,
}
decode_failure("RecursiveOptionalStructWithStringExceedLimit") {
type = RecursiveOptionalStructWithString,
bytes = {
v1, v2 = [
// 0
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 1
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 2
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 3
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 4
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 5
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 6
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 7
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 8
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 9
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 10
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 11
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 12
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 13
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 14
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 15
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 16
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 17
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 18
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 19
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 20
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 21
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 22
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 23
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 24
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 25
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 26
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 27
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 28
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 29
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 30
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 31
repeat(0xff):8, // inner,
num(0):8, // string count
repeat(0x00):8, // string body
// 32
repeat(0x00):8, // inner,
num(1):8, // string count
repeat(0xff):8, // string body
// 33
'X', padding:7,
],
},
err = EXCEEDED_MAX_OUT_OF_LINE_DEPTH,
}