2016-10-08 5 views

ответ

0

Вы можете достичь этого путем переопределения #run метод в тесте :

class FooTest < ActiveSupport::TestCase 
    def run 
    Foo.stub :some_method, 3 do 
     super 
    end 
    end 

    test 'for_something' do 
    #assert_equal 
    end 
end 

Это распространенный способ введения кода, который необходимо выполнить «вокруг» когда-либо y тестовый случай.

0

Я думаю, что это уже ответил здесь - https://stackoverflow.com/a/39081919/3102718

С жемчужиной mocha вы можете STUB методы в настройках или в тесте, например:

require 'active_support' 
require 'minitest/autorun' 
require 'mocha/mini_test' 

module Foo 
end 

class FooTest < ActiveSupport::TestCase 
    setup do 
    Foo.stubs(:some_method).returns(300) 
    end 

    test 'for_something' do 
    assert Foo.some_method == 300 
    end 
end 
Смежные вопросы