1616
1717def test_convert_to_traits_type ():
1818 Params = namedtuple ("Params" , "traits_type is_file" )
19- Res = namedtuple ("Res" , "traits_type is_mandatory" )
19+ Res = namedtuple ("Res" , "traits_type subtype is_mandatory" )
2020 l_entries = [
2121 Params ("variable string" , False ),
2222 Params ("variable int" , False ),
@@ -42,35 +42,38 @@ def test_convert_to_traits_type():
4242 Params ("complex, optional" , False ),
4343 ]
4444 l_expected = [
45- Res (traits .ListStr , True ),
46- Res (traits .ListInt , True ),
47- Res (traits .ListFloat , True ),
48- Res (traits .ListBool , True ),
49- Res (traits .ListComplex , True ),
50- Res (traits .ListInt , False ),
51- Res (traits .ListStr , False ),
52- Res (traits .ListFloat , False ),
53- Res (traits .ListBool , False ),
54- Res (traits .ListComplex , False ),
55- Res (traits .Str , True ),
56- Res (traits .Int , True ),
57- Res (File , True ),
58- Res (traits .Float , True ),
59- Res (traits .Bool , True ),
60- Res (traits .Complex , True ),
61- Res (traits .Str , False ),
62- Res (traits .Int , False ),
63- Res (File , False ),
64- Res (traits .Float , False ),
65- Res (traits .Bool , False ),
66- Res (traits .Complex , False ),
45+ Res (traits .List , traits . Str , True ),
46+ Res (traits .List , traits . Int , True ),
47+ Res (traits .List , traits . Float , True ),
48+ Res (traits .List , traits . Bool , True ),
49+ Res (traits .List , traits . Complex , True ),
50+ Res (traits .List , traits . Int , False ),
51+ Res (traits .List , traits . Str , False ),
52+ Res (traits .List , traits . Float , False ),
53+ Res (traits .List , traits . Bool , False ),
54+ Res (traits .List , traits . Complex , False ),
55+ Res (traits .Str , None , True ),
56+ Res (traits .Int , None , True ),
57+ Res (File , None , True ),
58+ Res (traits .Float , None , True ),
59+ Res (traits .Bool , None , True ),
60+ Res (traits .Complex , None , True ),
61+ Res (traits .Str , None , False ),
62+ Res (traits .Int , None , False ),
63+ Res (File , None , False ),
64+ Res (traits .Float , None , False ),
65+ Res (traits .Bool , None , False ),
66+ Res (traits .Complex , None , False ),
6767 ]
6868
6969 for entry , res in zip (l_entries , l_expected ):
7070 traits_type , is_mandatory = convert_to_traits_type (
7171 entry .traits_type , entry .is_file
7272 )
73- assert traits_type == res .traits_type
73+ trait_instance = traits_type ()
74+ assert isinstance (trait_instance , res .traits_type )
75+ if res .subtype :
76+ assert isinstance (trait_instance .inner_traits ()[0 ].trait_type , res .subtype )
7477 assert is_mandatory == res .is_mandatory
7578
7679 with pytest .raises (IOError ):
0 commit comments