机械师+ RSpec和保留词



我有一个蓝图:

Model.blueprint(:something) do
  name "Some name"
  context "some context"
end

"context"是Model的一个属性,但也是RSpec的一个保留词。当我尝试创建和对象时,我在"context"行上得到ArgumentError。

有什么办法克服这种情况吗?

无法使用Machinist 2.0.0.beta2复制此操作。

Machinist的工作原理是重写method_missing?,然后根据这些参数分配属性。如果rspec以某种方式将context方法分配给机械师车床的对象,那么该方法将在method_missing?之前被调用。如果您仍然遇到此问题,您可以在评估属性之前尝试使用remove_method :context:

Model.blueprint(:something) do
  remove_method :context
  name "Some name"
  context "some context"
  alias_method :context, :describe
end

我不知道这是否有效,因为我无法在本地复制它,但我想试试。

相关内容

  • 没有找到相关文章