|
1 | 1 | from collections import deque |
| 2 | +from collections.abc import Sequence |
2 | 3 | from typing import Deque, Dict, Generic, List, Optional, TypeVar, Union |
3 | 4 |
|
4 | 5 | import pytest |
@@ -109,9 +110,16 @@ class GenericCols(Generic[T]): |
109 | 110 | ( |
110 | 111 | (TClass[int, int, int], str, int, TClass(TClass(1, 2), "a")), |
111 | 112 | (List[TClass[int, int, int]], str, int, TClass([TClass(1, 2)], "a")), |
| 113 | + ( |
| 114 | + Sequence[TClass[str, str, str]], |
| 115 | + str, |
| 116 | + str, |
| 117 | + TClass((TClass("a", "b", "c"),), "b", "c"), |
| 118 | + ), |
112 | 119 | ), |
113 | 120 | ) |
114 | 121 | def test_structure_nested_generics(converter: BaseConverter, t, t2, t3, result): |
| 122 | + """Structuring nested generics works.""" |
115 | 123 | res = converter.structure(asdict(result), TClass[t, t2, t3]) |
116 | 124 |
|
117 | 125 | assert res == result |
@@ -161,7 +169,7 @@ class TClass2(Generic[T]): |
161 | 169 |
|
162 | 170 |
|
163 | 171 | def test_raises_if_no_generic_params_supplied( |
164 | | - converter: Union[Converter, BaseConverter] |
| 172 | + converter: Union[Converter, BaseConverter], |
165 | 173 | ): |
166 | 174 | data = TClass(1, "a") |
167 | 175 |
|
|
0 commit comments