3
我有一個藍圖:機械師+ RSpec的和保留字
Model.blueprint(:something) do
name "Some name"
context "some context"
end
「上下文」是模型的屬性,但它也是RSpec中的保留字。當我嘗試使對象在「上下文」行上出現ArgumentError時。
任何想法如何克服這種情況?
我有一個藍圖:機械師+ RSpec的和保留字
Model.blueprint(:something) do
name "Some name"
context "some context"
end
「上下文」是模型的屬性,但它也是RSpec中的保留字。當我嘗試使對象在「上下文」行上出現ArgumentError時。
任何想法如何克服這種情況?
無法用Machinist 2.0.0.beta2複製這個。
機械師的工作原理是重寫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
我不能告訴,如果這樣做的工作,因爲我不能在本地複製它,但我想給它一個射擊。