Size: a a a

2020 May 14

V

Vita in atinfo chat
ну вот) логгинги победили)
источник

ИС

Игорь Середа... in atinfo chat
Yury Kabalnov
а какой-то настройки нет, чтобы автоматически все респонсы логировались? в каждом методе писать, получается?
Есть.

custom_logger = logging.getLogger("requests.packages.urllib3")
custom_logger.setLevel(logging.DEBUG)
custom_logger.propagate = True
источник

V

Vita in atinfo chat
def log_request(func):
   def display(**kwargs):
       logging.info("тело запроса {}".format(**kwargs))
       logging.info("тело ответа {}".format(func(**kwargs)))
   return display
источник

S

Sergei in atinfo chat
Vita
ну тогда б сахаром не называл))
как раз таки наоборот, это всего лишь сахар, потому что все тоже самое можно сделать и без сахарного синтаксиса “@“, вот кстати обсуждение в тему https://stackoverflow.com/questions/12295974/python-decorators-just-syntactic-sugar
источник

V

Vita in atinfo chat
так думают те, кто не понимает декораторы)
источник

V

Vita in atinfo chat
вот когда поймеееееешь, тогда жизнь становится лучше
источник

S

Sergei in atinfo chat
Кстати если ты понимаешь декораторы, есть хорошая задачка в тему 😉 Как сделать так чтобы декоратор одинаково работал и как декоратор и как фабрика декораторов:

@decorator
def func():
   pass

@decorator()
def func():
   pass
источник

S

Sergei in atinfo chat
Понимающему не составит труда решить 😉
источник

V

Vita in atinfo chat
что такое фабрика декораторов?
источник

MA

Maksim Andryushchenk... in atinfo chat
Vita
что такое фабрика декораторов?
декоратор, который возвращает декоратор на основе данных ему аргументов
источник

V

Vita in atinfo chat
не вдуплил
источник

V

Vita in atinfo chat
на основе данных выбирает нужный декоратор?
источник

MA

Maksim Andryushchenk... in atinfo chat
такое ощущение что в жизни автоматизатора нереально нужны декораторы) прожить прям без них нельзя. ну залогируете вы что-то, ну сохраните где то состояние. кмк не стоит так заморачиваться ради тестов. потом дольше объяснять будете новому человеку что вы там написали. дадут вам джуна и будете ему про фабрику свою рассказывать неделю.
источник

S

Sergei in atinfo chat
ну вобще очень нужны, н-р классический пример декоратора-фабрики это pytest.mark.parametrize
источник

S

Sergei in atinfo chat
но в целом согласен что для большинства достаточно считать это магией))
источник

O

Oleg in atinfo chat
Имхо плохая идея ориентироваться на джунов, когда код пишешь. Код конечно при этом должен оставаться понятным.
источник

V

Vita in atinfo chat
Sergei
ну вобще очень нужны, н-р классический пример декоратора-фабрики это pytest.mark.parametrize
никто не отменял __ doc __
источник

V

Vita in atinfo chat
когда читаешь код в IDE, просто наводишь курсор и видишь описание
источник

S

Sergei in atinfo chat
кстати про их необходимость, думаю знание рецепта таких вкусняшек, наверное дает автоматизатору бонусы на собесах)
источник

S

Sergei in atinfo chat
так сказать вау-эффект)
источник