object-introspection/test/integration/std_reference_wrapper.toml
Jake Hillion 0e72947786 tbv2: add support for std::reference_wrapper
Closes #307

Test plan:
- CI
- Updated and enabled tests.
2024-01-15 16:20:26 +00:00

43 lines
1.7 KiB
TOML

includes = ["functional"]
[cases]
[cases.int]
param_types = ["const std::reference_wrapper<int>&"]
setup = "return std::ref(*new int(1));"
expect_json = '[{"staticSize":8, "dynamicSize":4, "length":1, "capacity":1, "elementStaticSize":4}]'
expect_json_v2 = '''[{
"size":12, "staticSize":8, "exclusiveSize":8, "length":1, "capacity":1, "members":[
{"size":4, "staticSize":4, "exclusiveSize":4, "members":[]}
]}]'''
[cases.vector]
param_types = ["const std::vector<std::reference_wrapper<int>>&"]
setup = "return {{std::ref(*new int(1)), std::ref(*new int(2)), std::ref(*new int(3))}};"
expect_json = '''[{
"staticSize":24,
"dynamicSize":36,
"length":3,
"capacity":3,
"elementStaticSize":8,
"members":[
{"staticSize":8, "dynamicSize":4, "length":1, "capacity":1, "elementStaticSize":4},
{"staticSize":8, "dynamicSize":4, "length":1, "capacity":1, "elementStaticSize":4},
{"staticSize":8, "dynamicSize":4, "length":1, "capacity":1, "elementStaticSize":4}
]}]'''
expect_json_v2 = '''[{
"size":60,
"staticSize":24,
"exclusiveSize":24,
"length":3,
"capacity":3,
"members":[
{"size":12, "staticSize":8, "exclusiveSize":8, "length":1, "capacity":1, "members":[
{"size":4, "staticSize":4, "exclusiveSize":4, "members":[]}
]},
{"size":12, "staticSize":8, "exclusiveSize":8, "length":1, "capacity":1, "members":[
{"size":4, "staticSize":4, "exclusiveSize":4, "members":[]}
]},
{"size":12, "staticSize":8, "exclusiveSize":8, "length":1, "capacity":1, "members":[
{"size":4, "staticSize":4, "exclusiveSize":4, "members":[]}
]}
]
}]'''