示例#1
0
    def test_basic(self):
        """Basic sanity and status testing."""
        tracer.HOOKS = []
        self.assertEqual(0, tracer.size())
        self.assertEqual(False, tracer.is_started())
        tracer.start()
        self.assertEqual(True, tracer.is_started())

        tracer.stop()
        self.assertEqual(False, tracer.is_started())
        self.assertEqual(1, tracer.add_hook(my_trace_dispatch,
                                            {'backlevel': 1}))
        self.assertEqual(0, len(trace_lines))

        tracer.start()
        self.assertEqual(0, len(trace_lines))
        self.assertEqual(True, tracer.is_started())
        self.assertEqual(
            0, tracer.remove_hook(my_trace_dispatch, stop_if_empty=True))
        self.assertEqual(False, tracer.is_started())
        self.assertEqual(
            1,
            tracer.add_hook(my_trace_dispatch, {
                'start': True,
                'backlevel': 1
            }))
        self.assertEqual(True, tracer.is_started())
        tracer.clear_hooks_and_stop()
        return
示例#2
0
 def stop(self, options=None):
     # Our version of:
     #    sys.settrace(None)
     try:
         self.trace_hook_suspend = True
         get_option = lambda key: Mmisc.option_set(options, key,
                                                   default.STOP_OPTS)
         args = [self.trace_dispatch]
         remove = get_option('remove')
         if remove:
             args.append(remove)
             pass
         if tracer.is_started():
             try:
                 tracer.remove_hook(*args)
             except LookupError:
                 pass
             pass
     finally:
         self.trace_hook_suspend = False
     return
示例#3
0
 def stop(self, options=None):
     # Our version of:
     #    pdb.set_trace(None)
     try:
         self.trace_hook_suspend = True
         get_option = lambda key: Mmisc.option_set(options, key,
                                                   default.STOP_OPTS)
         args = [self.trace_dispatch]
         remove = get_option('remove')
         if remove:
             args.append(remove)
             pass
         if tracer.is_started():
             try:
                 tracer.remove_hook(*args)
             except LookupError:
                 pass
             pass
     finally:
         self.trace_hook_suspend = False
     return
示例#4
0
 def test_remove(self):
     self.assertEquals(None, tracer.remove_hook(tracer.null_trace_hook))
     tracer.clear_hooks()
     self.assertEquals(None, tracer.remove_hook(tracer.null_trace_hook))
     return