我们有一个用例来模拟带有队列的 API 和带有 moto 的主题。我们编写了一个自定义装饰器来设置队列和主题来测试发布的事件。
def setup_queue(func):
@wraps(func)
def decorator(*args, **kwargs):
queue_url = setup_queue()
fullargspec = getfullargspec(func)
default_kwargs = fullargspec.kwonlydefaults
keyword_args = []
if full_args_spec.kwonlydefaults:
keyword_args = full_args_spec.args[len(default_kwargs):]
if "queue_url" in keyword_args:
kwargs["queue_url"] = queue_url
return func(*args, **kwargs)
return decorator
@setup_queue
@response.activate
def test_event(queue_url=None):
do_something(queue_url)
当我尝试获取事件时,队列 URL 为空。这是响应的问题吗?或者有没有更好的方法来做到这一点?