def testMediatorReregistration(self):
        """
        Tests registering the same mediator twice.
        A subsequent notification should only illicit
        one response. Also, since reregistration
        was causing 2 observers to be created, ensure
        that after removal of the mediator there will
        be no further response.

        Added for the fix deployed in version 2.0.4
        """

        view = puremvc.core.View.getInstance()

        view.registerMediator(utils.view.ViewTestMediator5(self))

        # try to register another instance of that mediator (uses the same NAME constant).
        view.registerMediator(utils.view.ViewTestMediator5(self))

        self.counter = 0
        view.notifyObservers(puremvc.patterns.observer.Notification(self.NOTE5))
        self.assertEqual(1, self.counter)

        view.removeMediator(utils.view.ViewTestMediator5.NAME)

        self.assertEqual(True, view.retrieveMediator(utils.view.ViewTestMediator5.NAME ) == None)

        self.counter=0
        view.notifyObservers(puremvc.patterns.observer.Notification(self.NOTE5))
        self.assertEqual(0,  self.counter)
Example #2
0
    def testMediatorReregistration(self):
        """
        Tests registering the same mediator twice. 
        A subsequent notification should only illicit
        one response. Also, since reregistration
        was causing 2 observers to be created, ensure
        that after removal of the mediator there will
        be no further response.
        
        Added for the fix deployed in version 2.0.4
        """

        view = puremvc.core.View.getInstance()

        view.registerMediator(utils.view.ViewTestMediator5(self))

        # try to register another instance of that mediator (uses the same NAME constant).
        view.registerMediator(utils.view.ViewTestMediator5(self))

        self.counter = 0
        view.notifyObservers(puremvc.patterns.observer.Notification(
            self.NOTE5))
        self.assertEqual(1, self.counter)

        view.removeMediator(utils.view.ViewTestMediator5.NAME)

        self.assertEqual(
            True,
            view.retrieveMediator(utils.view.ViewTestMediator5.NAME) == None)

        self.counter = 0
        view.notifyObservers(puremvc.patterns.observer.Notification(
            self.NOTE5))
        self.assertEqual(0, self.counter)
    def testRemoveSelf(self):
        view = puremvc.core.View.getInstance()
        view.registerMediator(utils.view.ViewTestMediator2(self))
        view.registerMediator(utils.view.ViewTestMediator3(self))

        self.assertTrue(self.NOTE5 in view.observerMap)
        view.notifyObservers(puremvc.patterns.observer.Notification(self.NOTE5))
        self.assertFalse(self.NOTE5 in view.observerMap)
    def testRemoveSelf(self):
        view = puremvc.core.View.getInstance()
        view.registerMediator(utils.view.ViewTestMediator2(self))
        view.registerMediator(utils.view.ViewTestMediator3(self))

        self.assertTrue(self.NOTE5 in view.observerMap)
        view.notifyObservers(puremvc.patterns.observer.Notification(
            self.NOTE5))
        self.assertFalse(self.NOTE5 in view.observerMap)
Example #5
0
	def testRemoveMediatorAndSubsequentNotify(self): 
		"""ViewTest: Test removeMediator() and subsequent nofity()"""

		view = puremvc.core.View.getInstance()
	
		view.registerMediator(utils.view.ViewTestMediator2(self))
	
		view.notifyObservers(puremvc.patterns.observer.Notification(self.NOTE1))
		self.assertEqual(True, self.lastNotification == self.NOTE1)

		view.notifyObservers(puremvc.patterns.observer.Notification(self.NOTE2))
		self.assertEqual(True, self.lastNotification == self.NOTE2)

		view.removeMediator(utils.view.ViewTestMediator2.NAME)
		
		self.assertEqual(True, view.retrieveMediator(utils.view.ViewTestMediator2.NAME) == None)

		self.lastNotification = None
	
		view.notifyObservers(puremvc.patterns.observer.Notification(self.NOTE1))
		self.assertEqual(True, self.lastNotification != self.NOTE1)

		view.notifyObservers(puremvc.patterns.observer.Notification(self.NOTE2))
		self.assertEqual(True, self.lastNotification != self.NOTE2)

		self.__cleanup()									
Example #6
0
    def testRemoveMediatorAndSubsequentNotify(self):
        """ViewTest: Test removeMediator() and subsequent nofity()"""

        view = puremvc.core.View.getInstance()

        view.registerMediator(utils.view.ViewTestMediator2(self))

        view.notifyObservers(puremvc.patterns.observer.Notification(
            self.NOTE1))
        self.assertEqual(True, self.lastNotification == self.NOTE1)

        view.notifyObservers(puremvc.patterns.observer.Notification(
            self.NOTE2))
        self.assertEqual(True, self.lastNotification == self.NOTE2)

        view.removeMediator(utils.view.ViewTestMediator2.NAME)

        self.assertEqual(
            True,
            view.retrieveMediator(utils.view.ViewTestMediator2.NAME) == None)

        self.lastNotification = None

        view.notifyObservers(puremvc.patterns.observer.Notification(
            self.NOTE1))
        self.assertEqual(True, self.lastNotification != self.NOTE1)

        view.notifyObservers(puremvc.patterns.observer.Notification(
            self.NOTE2))
        self.assertEqual(True, self.lastNotification != self.NOTE2)

        self.__cleanup()
Example #7
0
	def testRegisterAndNotifyObserver(self):
		"""ViewTest: Test registerObserver() and notifyObservers()"""
		
		self.viewTestVar = 0
		def viewTestMethod(note):
			self.viewTestVar = note.getBody()
		
		view = puremvc.core.View.getInstance()
		obsvr = puremvc.patterns.observer.Observer(viewTestMethod, self)
		view.registerObserver(utils.view.ViewTestNote.NAME, obsvr)
		
		note = utils.view.ViewTestNote.create(10)
		view.notifyObservers(note)
		
		self.assertEqual(True, self.viewTestVar == 10)
Example #8
0
	def testRegisterAndNotifyObserver(self):
		"""ViewTest: Test registerObserver() and notifyObservers()"""
		
		self.viewTestVar = 0
		def viewTestMethod(note):
			self.viewTestVar = note.getBody()
		
		view = org.puremvc.python.core.View.getInstance()
		obsvr = org.puremvc.python.patterns.observer.Observer(viewTestMethod, self)
		view.registerObserver(utils.view.ViewTestNote.NAME, obsvr)
		
		note = utils.view.ViewTestNote.create(10)
		view.notifyObservers(note)
		
		self.assertEqual(True, self.viewTestVar == 10)
Example #9
0
	def testRemoveOneOfTwoMediatorsAndSubsequentNotify(self): 
		"""ViewTest: Test removing one of two Mediators and subsequent notify()"""
		
		view = org.puremvc.python.core.View.getInstance()
		
		view.registerMediator(utils.view.ViewTestMediator2(self))
	
		view.registerMediator(utils.view.ViewTestMediator3(self))
	
		view.notifyObservers(org.puremvc.python.patterns.observer.Notification(self.NOTE1))
		self.assertEqual(True, self.lastNotification == self.NOTE1)

		view.notifyObservers(org.puremvc.python.patterns.observer.Notification(self.NOTE2))
		self.assertEqual(True, self.lastNotification == self.NOTE2)

		view.notifyObservers(org.puremvc.python.patterns.observer.Notification(self.NOTE3))
		self.assertEqual(True, self.lastNotification == self.NOTE3)
			
		view.removeMediator(utils.view.ViewTestMediator2.NAME)
		
		self.assertEqual(True, view.retrieveMediator(utils.view.ViewTestMediator2.NAME) == None)

		self.lastNotification = None
	
		view.notifyObservers(org.puremvc.python.patterns.observer.Notification(self.NOTE1))
		self.assertEqual(True, self.lastNotification != self.NOTE1)

		view.notifyObservers(org.puremvc.python.patterns.observer.Notification(self.NOTE2))
		self.assertEqual(True, self.lastNotification != self.NOTE2)

		view.notifyObservers(org.puremvc.python.patterns.observer.Notification(self.NOTE3))
		self.assertEqual(True, self.lastNotification == self.NOTE3)
		
		self.__cleanup()