Я хотел бы узнать, как лучше всего подойти к тестированию модулей ruby mixin, в этом случае для использования с моделями ActiveRecord, но на самом деле это общий вопрос, который применяется к любому классу, который вы расширяясь с помощью смесителя.
Лучше ли попытаться заглушить все необходимые функциональные возможности класса, который расширяет ваш микшин, или просто проверить реальный класс как присутствующий и расширенный в вашем приложение?
Stubbing удалит внешние зависимости для тестов, но в реальных условиях он не сможет протестировать mixin. Если тест завершился неудачно, это может быть либо ваша реализация, либо класс, который вы расширяете, изменив или сломав. Если тестирование с помощью класса с заглубленным тестом может проходить, но функциональность может быть нарушена, если класс, который вы расширяете, изменяется.
мнения?