фиктивные классы, созданные во время выполнения в Python - PullRequest
0 голосов
/ 30 марта 2020

Я хотел бы использовать макетную библиотеку Python, чтобы смоделировать метод generate_presigned_url () класса клиента Boto3 S3 в моих тестах и ​​заставить его возвращать поддельное значение URL-адреса на основе параметров корзины и ключа. Я думал об использовании side_effect в декораторе @ mock.patch для замены метода генерации URL-адреса на собственный. Однако AFAIK @ mock.patch () требует, чтобы класс уже был доступен во время настройки теста, а клиентский класс Boto3 S3 создается во время выполнения в boto3.client ('s3').

Возможно ли добиться того, что мне нужно?

...