view tests/swig_tests/controller_tests.py @ 338:d266506ff4f9

Bug fix. It turned out the instance tree contained ghost instances, since InstanceTree.removeInstance sometimes failed. This caused those random crashes in UH. Now the InstanceTree enforces that remove/add Instance work in pairs. A new Exception is raised in case this ever goes wrong again. (InconsitencyDetected) Furthermore the removeInstancheChangeListener stuff had a fix to become reentrant. It is not clear wether this was shadowed by the aforementioned bug or was never triggered.
author phoku@33b003aa-7bff-0310-803a-e67f0ece8222
date Mon, 24 Aug 2009 18:32:03 +0000
parents d2f1e81fbe2c
children 81641655bc38
line wrap: on
line source

#!/usr/bin/env python
from swig_test_utils import *

class TestController(unittest.TestCase):
	
	def setUp(self):
		self.engine = getEngine(True)
		
	def tearDown(self):
		self.engine.destroy()
		
	def testInstances(self):
		print "\nTest SoundManager"
		self.assert_(self.engine.getSoundManager())
		print "Test EventManager"
		self.assert_(self.engine.getEventManager())
		print "Test TimeManager"
		self.assert_(self.engine.getTimeManager())
		print "Test GuiManager"
		self.assert_(self.engine.getGuiManager())
		print "Test ImagePool"		
		self.assert_(self.engine.getImagePool())
		print "Test AnimationPool"
		self.assert_(self.engine.getAnimationPool())
		pass

	def testPumping(self):
		self.engine.initializePumping()
		for i in xrange(10):
			self.engine.pump()
		self.engine.finalizePumping()

TEST_CLASSES = [TestController]

if __name__ == '__main__':
	unittest.main()