Monkey patching в Golang

Наткнулся на очень интересную библиотеку, позволяющую переопределять функции и методы у объектов для написания юнит тестов перед компиляцией. В PHP, Ruby или Python это делается довольно просто парой строк. Т.к го все же язык компилируемый и со строгой типизацией тут нужно повозиться.

Итак, устанавливаем эту библиотеку:

Пишем наш тест и «мокаем» метод http.get:

Запускаем и убеждаемся что да, наш метод из пакета http.get был заменен на нашу функцию. Тем самым появляется возможность писать более понятные и простые юнит тесты, вызывающие сторонние пакеты.

Leave a Comment

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.