假设我有一个抽象类,它有一个非抽象的实例方法供子代继承:
# - abstract.cr
abstract class Abstract
def foo
2
end
end
如何为此编写规范?
# - abstract_spec.cr
it "returns 2 from #foo" do
Abstract.instance.foo.should eq 2 #???
end
可能有更好的方法(因此我发布了这个问题,我很想从社区获得反馈(,但我能想到的一种方法是在测试中让一个类继承来自父级。这样,您就可以抽象地关注类的"任何"实现。
# - abstract_spec.cr
class AbstractTest < Abstract
end
it "returns 2 from #foo" do
AbstractTest.new.foo.should eq 2
end