Ejemplo n.º 1
0
    def test_registration(self):
        register = MethodsRegister()

        func = lambda x: x
        register.register(func)
        register.register(name="test-x")(func)
        register.register(func, name="test-y")
        assert register.lookup("<lambda>") == func
        assert register.lookup("test-x") == func
        assert register.lookup("test-y") == func
Ejemplo n.º 2
0
    def get_methods(self):
        methods = MethodsRegister()

        def method1(request):
            """Returns the string "Hello, world!"."""
            return u"Hello, world!"

        def method2(request, name):
            """Docstring of method2()"""
            return u"Hello, {0}!".format(name)

        def method3(request, greeting=u'Hello', name=u'world'):
            """Docstring of method3()"""
            if not isinstance(greeting, basestring):
                raise ValueError("Greeting must be a string")
            if not isinstance(name, basestring):
                raise ValueError("Name must be a string")
            return u"{0}, {1}!".format(greeting, name)

        methods.register(method1)
        methods.register(method2)
        methods.register(method3)
        return methods
Ejemplo n.º 3
0
 def test_no_callable(self):
     register = MethodsRegister()
     with pytest.raises(ValueError):
         register.register("not_callable")
         register.register("not_callable", "test")