def testDirtyPropagation( self ) :

		p = GafferScene.Plane()
		o = GafferScene.CustomOptions()

		o["in"].setInput( p["out"] )

		cs = GafferTest.CapturingSlot( o.plugDirtiedSignal() )

		p["dimensions"]["x"].setValue( 100.1 )

		dirtiedPlugs = set( [ x[0].relativeName( x[0].node() ) for x in cs ] )

		self.assertEqual( len( dirtiedPlugs ), 6 )
		self.assertTrue( "in.bound" in dirtiedPlugs )
		self.assertTrue( "in.object" in dirtiedPlugs )
		self.assertTrue( "in" in dirtiedPlugs )
		self.assertTrue( "out.bound" in dirtiedPlugs )
		self.assertTrue( "out.object" in dirtiedPlugs )
		self.assertTrue( "out" in dirtiedPlugs )
dataset/ETHPy150Open ImageEngine/gaffer/python/GafferSceneTest/CustomOptionsTest.py/CustomOptionsTest.testDirtyPropagation/original