@@ -1094,26 +1094,41 @@ def testCanReadSetNamesAndMembersOfLinkedScene( self ) :
10941094
10951095 r = IECoreScene .SceneCache ( sceneFile , IECore .IndexedIO .OpenMode .Read )
10961096 A = r .child ( "A" )
1097+ B = A .child ( "B" )
10971098
10981099 # Master scene which contains link to above scene
10991100 # C
11001101 # D -> [target.scc, /]
1102+ # E
1103+ # A -> [target.scc, /A]
1104+ # F
1105+ # A
1106+ # B -> [target.scc, /A/B]
11011107
11021108 sceneFile = os .path .join ( self .tempDir , "scene.lscc" )
11031109 w = IECoreScene .LinkedScene ( sceneFile , IECore .IndexedIO .OpenMode .Write )
11041110 C = w .createChild ( "C" )
11051111 D = C .createChild ( "D" )
11061112
1113+ E = w .createChild ( "E" )
1114+ A1 = E .createChild ( "A" )
1115+
1116+ F = w .createChild ( "F" )
1117+ A2 = F .createChild ( "A" )
1118+ B1 = A2 .createChild ( "B" )
1119+
1120+ A1 .writeLink ( A )
11071121 D .writeLink ( r )
1122+ B1 .writeLink ( B )
11081123
1109- del w , C , D
1124+ del w , C , D , E , F , A1 , A2 , B1
11101125
11111126 # ok lets read back in our linked scene and try and read the set names
11121127 r = IECoreScene .LinkedScene ( sceneFile , IECore .IndexedIO .OpenMode .Read )
11131128 self .assertEqualUnordered ( r .setNames (), ['don' , 'stew' ] )
11141129
1115- self .assertEqual ( r .readSet ( "don" ), IECore .PathMatcher (['/C/D/A' ] ) )
1116- self .assertEqual ( r .readSet ( "stew" ), IECore .PathMatcher (['/C/D/A/B' ] ) )
1130+ self .assertEqual ( r .readSet ( "don" ), IECore .PathMatcher ( ['/C/D/A' , '/E/A' ] ) )
1131+ self .assertEqual ( r .readSet ( "stew" ), IECore .PathMatcher ( ['/C/D/A/B' , '/E/A/B' , '/F/A/B' ] ) )
11171132
11181133 self .assertEqualUnordered ( r .setNames ( includeDescendantSets = False ), [] )
11191134
0 commit comments