Пример #1
0
    def test_with_arguments(self):
        go('hello', world='world')
        Dummy().go('hello', world='world')

        metrics = self._query_backend()

        assert len([m for m in metrics if m.value['name'] == get_fqn(go)]) == 1
        assert len([m for m in metrics if m.value['name'] == get_fqn(Dummy().go)]) == 1
Пример #2
0
    def test_with_arguments(self):
        go('hello', world='world')
        Dummy().go('hello', world='world')

        metrics = self._query_backend(get_fqn(go))
        self.assertEqual(metrics['hits']['total'], 1)

        metrics = self._query_backend(get_fqn(Dummy().go))
        self.assertEqual(metrics['hits']['total'], 1)
    def test_with_arguments(self):
        go('hello', world='world')
        Dummy().go('hello', world='world')

        metrics = list(self._query_backend(get_fqn(go)))
        self.assertEqual(len(metrics), 1)

        metrics = list(self._query_backend(get_fqn(Dummy().go)))
        self.assertEqual(len(metrics), 1)
Пример #4
0
    def test_with_arguments(self):
        go("hello", world="world")
        Dummy().go("hello", world="world")

        metrics = list(self._query_backend(get_fqn(go)))
        self.assertEqual(len(metrics), 1)

        metrics = list(self._query_backend(get_fqn(Dummy().go)))
        self.assertEqual(len(metrics), 1)
Пример #5
0
    def test_with_arguments(self):
        go('hello', world='world')
        Dummy().go('hello', world='world')

        metrics = self._query_backend(get_fqn(go))
        self.assertEqual(metrics['hits']['total'], 1)

        metrics = self._query_backend(get_fqn(Dummy().go))
        self.assertEqual(metrics['hits']['total'], 1)
Пример #6
0
    def test_with_arguments(self):
        go("hello", world="world")
        Dummy().go("hello", world="world")

        metrics = self._query_backend(get_fqn(go))
        self.assertEqual(metrics["hits"]["total"], 1)

        metrics = self._query_backend(get_fqn(Dummy().go))
        self.assertEqual(metrics["hits"]["total"], 1)
Пример #7
0
    def test_old_hooks(self):
        def old_hook(response, exception, metric, func_args, func_kwargs):
            return dict(old_hook='old_hook')

        def new_hook(response, exception, metric, func, func_args,
                     func_kwargs):
            return dict(new_hook='new_hook',
                        attribute_from_class=func.__self__.attr)

        class Class:
            attr = 1

            @time_execution
            def method(self):
                return True

        with settings(backends=[CollectorBackend()],
                      hooks=[old_hook, new_hook]):
            collector = settings.backends[0]
            Class().method()

            assert len(collector.metrics) == 1
            metadata = collector.metrics[0][get_fqn(Class().method)]
            assert "old_hook" in metadata
            assert "new_hook" in metadata
            assert metadata["attribute_from_class"] == Class.attr
    async def test_decorated_method(self):
        class User:
            @AsyncDecorator
            async def method(self, a):
                return a

        assert get_fqn(User().method) == \
            'tests.test_fqn_decorators_async.User.method'
    def test_decorated_method(self):
        class User:
            @AsyncDecorator
            async def method(self, a):
                return a

        assert get_fqn(User(
        ).method) == "tests.test_fqn_decorators_asynchronous.User.method"
 def test_decorated_class(self):
     assert fqn_decorators.get_fqn(examples.A) == 'tests.examples.A'
 async def test_decorated_method_async(self):
     assert get_fqn(AsyncDecorator().before) == \
         'fqn_decorators.async.AsyncDecorator.before'
 def test_decorated_method(self):
     assert fqn_decorators.get_fqn(examples.A().method) == \
         'tests.examples.A.method'
 def test_decorated_inherited_method(self):
     assert fqn_decorators.get_fqn(InheritedExample().method) == \
         'tests.test_fqn_decorators.InheritedExample.method'
Пример #14
0
 def test_decorated_function(self):
     assert fqn_decorators.get_fqn(
         examples.my_test_func) == "tests.examples.my_test_func"
 def test_method(self):
     assert fqn_decorators.get_fqn(fqn_decorators.Decorator().before) == \
         'fqn_decorators.decorators.Decorator.before'
 def test_function(self):
     assert fqn_decorators.get_fqn(fqn_decorators.get_fqn) == \
         'fqn_decorators.decorators.get_fqn'
 def test_decorated_method_async(self):
     assert get_fqn(AsyncDecorator().before
                    ) == "fqn_decorators.asynchronous.AsyncDecorator.before"
Пример #18
0
    def test_custom_hook(self):
        with settings(backends=[CollectorBackend()], hooks=[global_hook]):
            collector = settings.backends[0]

            @time_execution(extra_hooks=[local_hook])
            def func_local_hook(*args, **kwargs):
                return True

            func_local_hook()
            assert len(collector.metrics) == 1
            metadata = collector.metrics[0][func_local_hook.get_fqn()]
            assert metadata["local_hook_key"] == "local hook value"
            assert metadata["global_hook_key"] == "global hook value"
            collector.clean()

            @time_execution(extra_hooks=[local_hook], disable_default_hooks=True)
            def func_local_hook_disable_default_hooks(*args, **kwargs):
                return True

            func_local_hook_disable_default_hooks()
            assert len(collector.metrics) == 1
            metadata = collector.metrics[0][func_local_hook_disable_default_hooks.get_fqn()]
            assert metadata["local_hook_key"] == "local hook value"
            assert "global_hook_key" not in metadata
            collector.clean()

            @time_execution
            def func_global_hook(*args, **kwargs):
                return True

            func_global_hook()
            assert len(collector.metrics) == 1
            metadata = collector.metrics[0][func_global_hook.get_fqn()]
            assert metadata["global_hook_key"] == "global hook value"
            assert "local_hook_key" not in metadata
            collector.clean()

            class ClassNoHooks:
                @time_execution(extra_hooks=[local_hook])
                def method_local_hook(self):
                    return True

                @time_execution
                def method_global_hook(self):
                    return True

            ClassNoHooks().method_local_hook()
            assert len(collector.metrics) == 1
            metadata = collector.metrics[0][ClassNoHooks().method_local_hook.get_fqn()]
            assert metadata["global_hook_key"] == "global hook value"
            assert metadata["local_hook_key"] == "local hook value"
            collector.clean()

            ClassNoHooks().method_global_hook()
            assert len(collector.metrics) == 1
            metadata = collector.metrics[0][ClassNoHooks().method_global_hook.get_fqn()]
            assert metadata["global_hook_key"] == "global hook value"
            assert "local_hook_key" not in metadata
            collector.clean()

            @time_execution(extra_hooks=[local_hook])
            class ClassLocalHook:
                def method(self):
                    return True

                @time_execution
                def method_global_hook(self):
                    return True

            ClassLocalHook().method()
            assert len(collector.metrics) == 1
            metadata = collector.metrics[0][get_fqn(ClassLocalHook)]
            assert metadata["global_hook_key"] == "global hook value"
            assert metadata["local_hook_key"] == "local hook value"
            collector.clean()

            ClassLocalHook().method_global_hook()
            assert len(collector.metrics) == 2
            metadata_class = collector.metrics[0][get_fqn(ClassLocalHook)]
            assert metadata_class["local_hook_key"] == "local hook value"
            assert metadata_class["global_hook_key"] == "global hook value"
            metadata = collector.metrics[1][ClassLocalHook().method_global_hook.get_fqn()]
            assert metadata["global_hook_key"] == "global hook value"
            assert "local_hook_key" not in metadata
            collector.clean()

            @time_execution
            class ClassGlobalHook:
                def method(self):
                    return True

                @time_execution(extra_hooks=[local_hook])
                def method_local_hook(self):
                    return True

            ClassGlobalHook().method()
            assert len(collector.metrics) == 1
            metadata = collector.metrics[0][get_fqn(ClassGlobalHook)]
            assert metadata["global_hook_key"] == "global hook value"
            assert "local_hook_key" not in metadata
            collector.clean()

            ClassGlobalHook().method_local_hook()
            assert len(collector.metrics) == 2
            metadata_class = collector.metrics[0][get_fqn(ClassGlobalHook)]
            assert metadata_class["global_hook_key"] == "global hook value"
            assert "local_hook_key" not in metadata_class
            metadata = collector.metrics[1][ClassGlobalHook().method_local_hook.get_fqn()]
            assert metadata["global_hook_key"] == "global hook value"
            assert metadata["local_hook_key"] == "local hook value"
            collector.clean()
Пример #19
0
 def test_decorated_class(self):
     assert fqn_decorators.get_fqn(examples.A) == "tests.examples.A"
Пример #20
0
 def test_decorated_method(self):
     assert fqn_decorators.get_fqn(
         examples.A().method) == "tests.examples.A.method"
Пример #21
0
 def test_method(self):
     assert fqn_decorators.get_fqn(fqn_decorators.Decorator(
     ).before) == "fqn_decorators.decorators.Decorator.before"
Пример #22
0
 def test_class(self):
     assert fqn_decorators.get_fqn(
         fqn_decorators.Decorator) == "fqn_decorators.decorators.Decorator"
 async def test_class_async(self):
     assert get_fqn(AsyncDecorator) == \
         'fqn_decorators.async.AsyncDecorator'
 def test_decorated_function(self):
     assert fqn_decorators.get_fqn(examples.my_test_func) == \
         'tests.examples.my_test_func'
 def test_class_async(self):
     assert get_fqn(
         AsyncDecorator) == "fqn_decorators.asynchronous.AsyncDecorator"
 def test_class(self):
     assert fqn_decorators.get_fqn(fqn_decorators.Decorator) == \
         'fqn_decorators.decorators.Decorator'
Пример #27
0
 def test_decorated_inherited_method(self):
     assert fqn_decorators.get_fqn(InheritedExample(
     ).method) == "tests.test_fqn_decorators.InheritedExample.method"
Пример #28
0
 def test_function(self):
     assert fqn_decorators.get_fqn(
         fqn_decorators.get_fqn) == "fqn_decorators.decorators.get_fqn"