Tag: 模拟minitest

如何使用Ruby模拟类?

我正在使用minitest / mock并且想要模拟一个类。 我不是试图测试模型类本身,而是试图测试服务(SomeService)与模型(SomeModel)的交互。 我想出了这个(Hack :: ClassDelegate),但我不相信这是个好主意: require ‘minitest/autorun’ require ‘minitest/mock’ module Hack class ClassDelegate def self.set_delegate(delegate); @@delegate = delegate; end def self.method_missing(sym, *args, &block) @@delegate.method_missing(sym, *args, &block) end end end class TestClassDelegation < MiniTest::Unit::TestCase class SomeModel < Hack::ClassDelegate ; end class SomeService def delete(id) SomeModel.delete(id) end end def test_delegation id = '123456789' mock = […]