aboutsummaryrefslogtreecommitdiff
path: root/tests/test_stl_binders.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/test_stl_binders.py')
-rw-r--r--tests/test_stl_binders.py18
1 files changed, 18 insertions, 0 deletions
diff --git a/tests/test_stl_binders.py b/tests/test_stl_binders.py
index 7dca742a..e002f5b6 100644
--- a/tests/test_stl_binders.py
+++ b/tests/test_stl_binders.py
@@ -335,3 +335,21 @@ def test_map_view_types():
assert type(unordered_map_string_double.items()) is items_type
assert type(map_string_double_const.items()) is items_type
assert type(unordered_map_string_double_const.items()) is items_type
+
+
+def test_recursive_vector():
+ recursive_vector = m.RecursiveVector()
+ recursive_vector.append(m.RecursiveVector())
+ recursive_vector[0].append(m.RecursiveVector())
+ recursive_vector[0].append(m.RecursiveVector())
+ # Can't use len() since test_stl_binders.cpp does not include stl.h,
+ # so the necessary conversion is missing
+ assert recursive_vector[0].count(m.RecursiveVector()) == 2
+
+
+def test_recursive_map():
+ recursive_map = m.RecursiveMap()
+ recursive_map[100] = m.RecursiveMap()
+ recursive_map[100][101] = m.RecursiveMap()
+ recursive_map[100][102] = m.RecursiveMap()
+ assert list(recursive_map[100].keys()) == [101, 102]