我對Rails 3中的測試還很新,我使用RSpec和Remarkable。我已經閱讀了大量的文章和一些書籍,但當我們使用該協會的名稱和ID時,我仍然處於不確定的狀態。驗證和測試Rails 3關聯(使用RSpec/Remarkable)的完美方法?
class Project < ActiveRecord::Base
has_many :tasks
end
class Task < ActiveRecord::Base
belongs_to :project
end
由於沒有很好的做法,我要保護我的屬性,從質量分配:
class Task < ActiveRecord::Base
attr_accessible :project # Or is it :project_id??
belongs_to :project
end
首先,我要確保項目從未存在沒有有效的任務:
class Task < ActiveRecord::Base
validates :project, :presence => true # Which one is the...
validates :project_id, :presence => true # ...right way to go??
end
我也想確保指定的項目或項目ID始終是有效的:
class Task < ActiveRecord::Base
validates :project, :associated => true # Again, which one is...
validates :project_id, :associated => true # ...the right way to go?
end
...我需要驗證:我在使用時的存在:相關?
非常感謝澄清,似乎閱讀時間和嘗試使用的RSpec /早該來測試的東西后/顯着的我沒有看到,因爲所有的樹木了的森林......
很好的清晰的問題。爲了確認,你是不是想要「確保任務**從不**沒有有效的(父項目)項目」? –