我需要測試傳入的參數類型是一個整數。這裏是我的測試規範:RSpec如何測試傳遞給方法的參數數據類型
require 'ball_spin'
RSpec.describe BallSpin do
describe '#create_ball_spin' do
subject(:ball_spin) { BallSpin.new }
it 'should accept an integer argument' do
expect(ball_spin).to receive(:create_ball_spin).with(an_instance_of(Integer))
ball_spin.create_ball_spin(5)
end
end
end
我的代碼:
class BallSpin
def create_ball_spin n
"Created a ball spin #{n} times" if n.is_a? Integer
end
end
在此先感謝
UPDATE:
道歉使用舊RSpec的語法,下面我更新了我的代碼使用最新的:
it 'should accept an integer argument' do
expect(ball_spin).to receive(:create_ball_spin).with(an_instance_of(Integer))
ball_spin.create_ball_spin(5)
end
謝謝回答,我得到了一個錯誤NoMethodError你好:未定義的方法'收到」爲#
@Kris MP,您使用的是什麼版本Rspec的呢? –