Как я могу фальсифицировать функции модуля самонаписанного модуля внутри моего проекта?
Учитывая модуль и функцию
module ModuleA::ModuleB
def self.my_function( arg )
end
end
который называется как
ModuleA::ModuleB::my_function( with_args )
Как я должен издеваться над ним, когда он используется внутри функции? Я пишу спецификации для?
Удвоение его (obj = double("ModuleA::ModuleB")
) для меня не имеет смысла, поскольку функция вызывается в модуле, а не на объекте.
Я пробовал его (ModuleA::ModuleB.stub(:my_function).with(arg).and_return(something)
). Очевидно, что это не сработало. stub
там не определен.
Затем я попробовал его с should_receive
. Снова NoMethodError
.
Каков предпочтительный способ издеваться над модулем и он функционирует?