Exemplo n.º 1
0
    def runTest(self):

        sys.stdout.write('\n')

        # Load an event system
        events = EventManager(
        )  #stddebug=lambda n: sys.stdout.write('{0}\n'.format(n)))

        # Load rulesets
        rulesets = RulesetBattery(
        )  #stddebug=lambda n: sys.stdout.write('{0}\n'.format(n)))
        rulesets.load_objects(events, rules)

        self.assertIsNotNone(events.rules.get('example', None),
                             'Failed to load test ruleset')

        # Load plugins!
        plugins = ReactorBattery(
        )  #stddebug=lambda n: sys.stdout.write('{0}\n'.format(n)))
        plugins.load_objects(events, reactors, 'Plugin')

        self.assertIsNotNone(events.map.get('example', None),
                             'Event bindings failed')

        events.rules['example'].reset_called()

        # Fire an event!
        events.trigger(Event('example'))

        # Test Results!
        self.assertTrue(events.rules['example'].called,
                        'Example ruleset not called properly')

        self.assertTrue(plugins.loaded['Example'].full_test,
                        'Example reactor not called properly')
Exemplo n.º 2
0
    def test_loading_reactors(self):
        # Test loading reactors into a battery.
        # sys.stdout.write('\n')
        # Add `stddebug=debug` to the constructors here to see debug messages
        # during the tests.
        good_battery = ReactorBattery(lambda n: None)
        bad_battery = ReactorBattery(lambda n: None)

        # This should fail
        bad_battery.load_objects(self.events, reactors, 'Extension')
        self.assertFalse(
            len(bad_battery.loaded) > 0,
            'Reactors loaded into the wrong battery')

        # This should do the trick
        good_battery.load_objects(self.events, reactors, 'Plugin')
        self.assertTrue(
            len(good_battery.loaded) > 0,
            'Reactors not loaded by the right battery')