예제 #1
0
	def test( self ) :

		self.failIf( arnold.AiUniverseIsActive() )

		with IECoreArnold.UniverseBlock( writable = False ) :

			self.failUnless( arnold.AiUniverseIsActive() )

			with IECoreArnold.UniverseBlock( writable = False ) :

				self.failUnless( arnold.AiUniverseIsActive() )

			self.failUnless( arnold.AiUniverseIsActive() )
예제 #2
0
    def test(self):

        self.assertFalse(arnold.AiUniverseIsActive())

        with IECoreArnold.UniverseBlock(writable=False):

            self.assertTrue(arnold.AiUniverseIsActive())

            with IECoreArnold.UniverseBlock(writable=False):

                self.assertTrue(arnold.AiUniverseIsActive())

            self.assertTrue(arnold.AiUniverseIsActive())
예제 #3
0
    def test(self):

        if not self.__usingMultipleUniverses:
            self.assertFalse(arnold.AiUniverseIsActive())

        with IECoreArnold.UniverseBlock(writable=False):

            self.assertTrue(arnold.AiUniverseIsActive())

            with IECoreArnold.UniverseBlock(writable=False):

                self.assertTrue(arnold.AiUniverseIsActive())

            self.assertTrue(arnold.AiUniverseIsActive())
예제 #4
0
	def testWritable( self ) :

		def createBlock( writable ) :

			with IECoreArnold.UniverseBlock( writable ) :

				self.failUnless( arnold.AiUniverseIsActive() )

		with IECoreArnold.UniverseBlock( writable = True ) :

			self.failUnless( arnold.AiUniverseIsActive() )

			createBlock( False )
			self.assertRaisesRegexp( RuntimeError, "Arnold is already in use", createBlock, True )

		with IECoreArnold.UniverseBlock( writable = False ) :

			self.failUnless( arnold.AiUniverseIsActive() )

			createBlock( True )
			createBlock( False )
예제 #5
0
        def createBlock(writable, expectedUniverse=None):

            with IECoreArnold.UniverseBlock(writable) as universe:

                if not self.__usingMultipleUniverses:
                    self.assertTrue(arnold.AiUniverseIsActive())
                else:
                    self.assertIsNotNone(universe)

                if expectedUniverse is not None:
                    self.assertEqual(
                        ctypes.addressof(universe.contents),
                        ctypes.addressof(expectedUniverse.contents))
예제 #6
0
    def testWritable(self):
        def createBlock(writable):

            with IECoreArnold.UniverseBlock(writable):

                self.assertTrue(arnold.AiUniverseIsActive())

        with IECoreArnold.UniverseBlock(writable=True):

            self.assertTrue(arnold.AiUniverseIsActive())

            createBlock(False)
            if not self.__usingMultipleUniverses:
                self.assertRaisesRegexp(RuntimeError,
                                        "Arnold is already in use",
                                        createBlock, True)

        with IECoreArnold.UniverseBlock(writable=False):

            self.assertTrue(arnold.AiUniverseIsActive())

            createBlock(True)
            createBlock(False)
예제 #7
0
    def testWritable(self):
        def createBlock(writable, expectedUniverse=None):

            with IECoreArnold.UniverseBlock(writable) as universe:

                if not self.__usingMultipleUniverses:
                    self.assertTrue(arnold.AiUniverseIsActive())
                else:
                    self.assertIsNotNone(universe)

                if expectedUniverse is not None:
                    self.assertEqual(
                        ctypes.addressof(universe.contents),
                        ctypes.addressof(expectedUniverse.contents))

        with IECoreArnold.UniverseBlock(writable=True) as universe:

            if not self.__usingMultipleUniverses:
                self.assertTrue(arnold.AiUniverseIsActive())
            else:
                self.assertIsNotNone(universe)

            createBlock(False)
            if not self.__usingMultipleUniverses:
                six.assertRaisesRegex(self, RuntimeError,
                                      "Arnold is already in use", createBlock,
                                      True)

        with IECoreArnold.UniverseBlock(writable=False) as universe:

            if not self.__usingMultipleUniverses:
                self.assertTrue(arnold.AiUniverseIsActive())
            else:
                self.assertIsNotNone(universe)

            createBlock(True)
            createBlock(False, expectedUniverse=universe)
예제 #8
0
        def createBlock(writable):

            with IECoreArnold.UniverseBlock(writable):

                self.assertTrue(arnold.AiUniverseIsActive())
예제 #9
0
        def createBlock(writable):

            with IECoreArnold.UniverseBlock(writable):

                self.failUnless(arnold.AiUniverseIsActive())