Для того, чтобы быть valid_signature?
вспомогательный метод Синатра, он должен быть частью модуля. Таким образом, предполагается, что ваш модуль является MyModule
module MyModule
def valid_signature?
end
end
Мы можем издеваться valid_signature?
используя MiniTest следующим образом:
MyModule.stub :valid_signature?, "stub return value" do
# method is stubbed only in this block, so run tests from here
# make sure your module was defined before you stub it.
end
Если запуск ваших тестов внутри блок-слишком ограничивающими, я бы рекомендовал смотреть на Mocha stubbing and mock library или просто вручную переопределяя метод во время выполнения самостоятельно в тестовом файле:
MyModule
def valid_signature?
# you can only redefine after class has already been defined.
"stub return value"
end
end
К сожалению, это не сработало. Я получаю "неопределенный метод' valid_signature? Для MyModule ". Переключение на мокко - это не вариант, я думаю - в этом проекте уже довольно много тестов с использованием minitest. – Sebastian
Вы действительно заменили MyModule своим фактическим именем модуля? Вы также должны убедиться, что ваш модуль был необходим в первую очередь. –