tornadorpc icon indicating copy to clipboard operation
tornadorpc copied to clipboard

Check length of args before popping first element

Open ly0 opened this issue 9 years ago • 0 comments

When I wanted to add a decorator of Basic HTTP Authentication to a method of a class, getcallargs thrown an exception.

  File "/Users/admin/codes/rpc/tornadorpc/utils.py", line 26, in getcallargs
    args.pop(0)
IndexError: pop from empty list

Here's the test code:

import functools

def authtest(func):
    @functools.wraps(func)
    def wrapper(*args, **kwargs):
        func._need_authenticated = True
        return func(*args, **kwargs)
    return wrapper

class TestA(object):

    @authtest
    def category(self, slug):
        return 'Done'

class Handler(JSONRPCHandler):

    testa = TestA()

ly0 avatar May 21 '15 09:05 ly0