我有一个蓝图:
Model.blueprint(:something) do
name "Some name"
context "some context"
end
“context”是Model的一个属性,但它也是RSpec的保留字。当我尝试制作和对象时,我在“上下文”行上获得了ArgumentError。
有任何想法如何克服这种情况?
答案 0 :(得分:0)
无法使用Machinist 2.0.0.beta2复制此内容。
机械师通过覆盖method_missing?
然后根据这些参数分配属性来工作。如果rspec以某种方式为Machinist的Lathe对象分配context
方法,那么将在method_missing?
之前调用该方法。如果您仍然遇到此问题,可以在评估属性之前尝试使用remove_method :context
:
Model.blueprint(:something) do
remove_method :context
name "Some name"
context "some context"
alias_method :context, :describe
end
我不知道这是否有用,因为我无法在本地复制它,但我会试一试。