如何在 Rails 应用程序中测试简单的 Ruby class?
How to test simple Ruby class in Rails application?
我有一个 Rails 4 应用程序,我正在向其中添加一个简单的 class 作为我正在调用的外部 API 的包装器。 class 不继承任何东西,看起来像:
class MyFacade
def self.foo
WebService::foo
end
def self.bar
WebService::bar
end
end
我已将文件放入自动加载的 app/classes 中。这工作正常。问题是,您如何以及在何处使用仅 class 方法为这样的 class 编写测试?
我会创建文件 test/models/my_facade_test.rb
并在那里进行测试。这仍然是您域的一部分,即使它不是从 ActiveRecord 继承的。并非每个领域模型都需要由数据库支持 table。
与您测试 ActiveRecord 模型的方式完全相同。
您的测试将类似于:
expect(MyFacade.foo).to be_kind_of(WebService::foo)
等等
我有一个 Rails 4 应用程序,我正在向其中添加一个简单的 class 作为我正在调用的外部 API 的包装器。 class 不继承任何东西,看起来像:
class MyFacade
def self.foo
WebService::foo
end
def self.bar
WebService::bar
end
end
我已将文件放入自动加载的 app/classes 中。这工作正常。问题是,您如何以及在何处使用仅 class 方法为这样的 class 编写测试?
我会创建文件 test/models/my_facade_test.rb
并在那里进行测试。这仍然是您域的一部分,即使它不是从 ActiveRecord 继承的。并非每个领域模型都需要由数据库支持 table。
与您测试 ActiveRecord 模型的方式完全相同。
您的测试将类似于:
expect(MyFacade.foo).to be_kind_of(WebService::foo)
等等