def _deferredUpdate( self, indexedIO ) : self.__indexedIOPath = Gaffer.IndexedIOPath( indexedIO, "/" ) self.__indexedIOPathChangedConnection = self.__indexedIOPath.pathChangedSignal().connect( Gaffer.WeakMethod( self.__indexedIOPathChanged ) ) self.__pathWidget.setPath( self.__indexedIOPath ) self.__pathPreview.setPath( self.__indexedIOPath ) # we use a separate path for the listing so it'll always be rooted at the start listingPath = Gaffer.IndexedIOPath( indexedIO, "/" ) self.__pathListing.setPath( listingPath ) self.__pathListingSelectionChangedConnection = self.__pathListing.selectionChangedSignal().connect( Gaffer.WeakMethod( self.__pathListingSelectionChanged ) )
def testInfo( self ) : p = Gaffer.IndexedIOPath( self.__fileName, "/d1/d2/c" ) i = p.info() self.assertEqual( i["indexedIO:entryType"], IECore.IndexedIO.EntryType.File ) self.assertEqual( i["indexedIO:dataType"], IECore.IndexedIO.DataType.String ) p = Gaffer.IndexedIOPath( self.__fileName, "/d1/d2/d" ) i = p.info() self.assertEqual( i["indexedIO:entryType"], IECore.IndexedIO.EntryType.File ) self.assertEqual( i["indexedIO:dataType"], IECore.IndexedIO.DataType.IntArray ) self.assertEqual( i["indexedIO:arrayLength"], 3 ) p = Gaffer.IndexedIOPath( self.__fileName, "/d1/d2" ) i = p.info() self.assertEqual( i["indexedIO:entryType"], IECore.IndexedIO.EntryType.Directory )
def testChildren( self ) : p = Gaffer.IndexedIOPath( self.__fileName, "/" ) c = p.children() self.assertEqual( len( c ), 2 ) cs = [ str( x ) for x in c ] self.failUnless( "/d1" in cs ) self.failUnless( "/d3" in cs )
def testConstructFromIndexedIO( self ) : p = Gaffer.IndexedIOPath( IECore.FileIndexedIO( self.__fileName, IECore.IndexedIO.OpenMode.Read ), "/" ) self.failUnless( p.isValid() ) p.append( "d1" ) self.failUnless( p.isValid() ) p.append( "notHere" ) self.failIf( p.isValid() )
def testConstructFromFileName( self ) : p = Gaffer.IndexedIOPath( self.__fileName, "/" ) self.failUnless( p.isValid() ) p.append( "d1" ) self.failUnless( p.isValid() ) p.append( "notHere" ) self.failIf( p.isValid() )
def testRelative( self ) : p = Gaffer.IndexedIOPath( self.__fileName, "d1/d2" ) self.assertEqual( str( p ), "d1/d2" ) self.assertEqual( p.root(), "" ) self.assertTrue( "d1/d2/a" in [ str( c ) for c in p.children() ] ) p2 = p.copy() self.assertEqual( str( p2 ), "d1/d2" ) self.assertEqual( p2.root(), "" ) self.assertTrue( "d1/d2/a" in [ str( c ) for c in p2.children() ] )
def testData( self ) : p = Gaffer.IndexedIOPath( self.__fileName, "/d1/d2/c" ) self.assertEqual( p.data(), IECore.StringData( "three" ) )