我有一个模型,它接受一组参数,并尝试对一个参数进行加密,并将加密的数据传递给另一个方法。
def post(key, value, data)
business_guid = SecureRandom.uuid
queue_item = "#{key}^#{value}^#{data}"
Queue.create_queue_item(business, Finance, "medium", 2011-12-20, "abc", data)
end
所以这里我需要模拟我的rspec中的数据,因为每次它创建一个随机的business_guid,我的模拟数据与新生成的一个失败。所以你能告诉我该如何处理吗?
(我不确定我理解对了)
为什么不把它存根
SecureRandom.stub(uuid: 'some_uuid')
如果您正在使用Minitest(我强烈推荐),您可以使用一个简单的Minitest存根:
SecureRandom.stub :uuid, "whateveryouwant" do
SecureRandom.uuid #=> "whateveryouwant"
end
我更喜欢这些,因为一旦块完成, 存根就会消失!太好了。