我正在调用一个标量值函数,但很难弄清楚如何为它创建模拟测试用例。
我只想创建一些模拟测试用例,例如
我在下面尝试了一些东西但是在这里我必须调用实际的函数,我不想这样做,因为如果数据库改变它会导致测试用例失败,因此想要模拟案例。
require 'rails_helper'
describe ScalarSqlFunction::Base do
describe '#exec' do
let!(:success) { 0 }
context 'with valid input' do
let(:response) {
ScalarSqlFunction::CalcTotal(105)
}
before do
allow(response)
.to receive(return_code).and_return(success)
end
it 'returns success' do
expect(response.return_code).to eq(success)
end
end
end
end
答案 0 :(得分:0)
您可以为ScalarSqlFunction :: CalcTotal
创建模拟对象require 'rails_helper'
describe ScalarSqlFunction::Base do
describe '#exec' do
let!(:success) { 0 }
context 'with valid input' do
let(:response) { double('Response') }
before do
allow(response)
.to receive(return_code).and_return(success)
end
it 'returns success' do
expect(response.return_code).to eq(success)
end
end
end
end