如何模拟装饰器中的参数没有python

2024-09-28 21:03:45 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图在单元测试中模拟decorator参数的值

代码:

# decorator 
def get_data(soup, tag, tipo):
    def valid(func):
        def inner(*args):
                return soup.findAll(tag, {"class": tipo})
        return inner
    return valid


@get_data(soup, "h2", "product__title")
def gerar_nomes():
    return value

单元测试:

self.soup = BeautifulSoup(self.code, 'html.parser')
self.codnomes = desa.generate_names(self.soup)

 def test_generate_names(self):
        self.assertEqual('<h2 class="product__title">p1</h2>', str(self.codnomes[0]))
        self.assertEqual('<h2 class="product__title">p2</h2>', str(self.codnomes[1]))

Tags: selfdatagetreturntitledeftagdecorator