Ejemplo n.º 1
0
 def test_get_aspect(self):
     """tests weaver.get_aspect()"""
     aspect = weaver.get_aspect(ProfilerAspect)
     self.assertEquals(aspect, None)
     weaver.weave_object(self.klass, ProfilerAspect)
     aspect = weaver.get_aspect(ProfilerAspect)
     self.assertEquals(isinstance(aspect, ProfilerAspect), True)
Ejemplo n.º 2
0
 def test_get_aspect(self):
     """tests weaver.get_aspect()"""
     aspect = weaver.get_aspect(ProfilerAspect)
     self.assertEquals(aspect, None)
     weaver.weave_object(self.klass, ProfilerAspect)
     aspect = weaver.get_aspect(ProfilerAspect)
     self.assertEquals(isinstance(aspect, ProfilerAspect), True)
Ejemplo n.º 3
0
 def setUp(self):
     """setUp method for tests
     """
     self.a = SillyClass()
     self.b = SillySubclass()
     weaver.weave_methods(self.a, ContractAspect)
     weaver.weave_methods(self.b, ContractAspect)
     weaver.get_aspect(ContractAspect)
Ejemplo n.º 4
0
 def test_dump_readable_profiles(self):
     """tests that dump_readable_profiles() doesn't raise an exception"""
     weaver.weave_object(Test, ProfilerAspect)
     self.instance.bar()
     aspect = weaver.get_aspect(ProfilerAspect)
     stream = StringIO()
     aspect.dump_readable_profiles(stream)
Ejemplo n.º 5
0
 def test_dump_readable_profiles(self):
     """tests that dump_readable_profiles() doesn't raise an exception"""
     weaver.weave_object(Test, ProfilerAspect)
     self.instance.bar()
     aspect = weaver.get_aspect(ProfilerAspect)
     stream = StringIO()
     aspect.dump_readable_profiles(stream)
Ejemplo n.º 6
0
 def test_unweave_pointcut(self):
     """tests unweave() for pointcuts"""
     pcut = PointCut()
     pcut.add_method(self.klass, 'foo')
     weaver.weave_pointcut(pcut, ContractAspect)
     self.assertEquals(len(weaver.get_aspects(self.klass, 'foo')), 1)
     weaver.unweave_pointcut(pcut, ContractAspect)
     self.assertEquals(weaver.get_aspect(ContractAspect), None)
Ejemplo n.º 7
0
 def test_unweave_pointcut(self):
     """tests unweave() for pointcuts"""
     pcut = PointCut()
     pcut.add_method(self.klass, 'foo')
     weaver.weave_pointcut(pcut, ContractAspect)
     self.assertEquals(
         len(weaver.get_aspects(self.klass, 'foo')), 1)
     weaver.unweave_pointcut(pcut, ContractAspect)
     self.assertEquals(weaver.get_aspect(ContractAspect), None)
Ejemplo n.º 8
0
 def test_register_aspect(self):
     """tests() aspect registration"""
     old_foo = self.instance.foo
     weaver.weave_object(self.klass, ContractAspect)
     # instances of self.klass must have been aspected !
     self.assertNotEquals(old_foo, self.instance.foo)
     contract = weaver.get_aspect(ContractAspect)
     old_foo = self.instance.foo
     # Trying to reaspect self.instance should not change its methods
     weaver._weave_method(self.klass, 'foo', contract)
     self.assertEquals(old_foo, self.instance.foo)
Ejemplo n.º 9
0
 def test_register_aspect(self):
     """tests() aspect registration"""
     old_foo = self.instance.foo
     weaver.weave_object(self.klass, ContractAspect)
     # instances of self.klass must have been aspected !
     self.assertNotEquals(old_foo, self.instance.foo)
     contract = weaver.get_aspect(ContractAspect)
     old_foo = self.instance.foo
     # Trying to reaspect self.instance should not change its methods
     weaver._weave_method(self.klass, 'foo', contract)
     self.assertEquals(old_foo, self.instance.foo)
Ejemplo n.º 10
0
def run():
    """Run example
    """
    writer = MyClass()
    weaver.weave_methods(MyClass, ProfilerAspect)
    print "Warning : this can take a while ...., be patient"
    writer.write_one_char('a')
    writer.write_two_chars('a')
    writer.write_thousands_chars('a')
    writer.write_thousands_stringio('a')
    writer.write_thousands_cstringio('a')
    writer.write_thousands_join('a')
    writer.write_one_char('a')

    import sys
    aspect_instance = weaver.get_aspect(ProfilerAspect)
    aspect_instance.dump_readable_profiles(sys.stdout)