2013-12-16 144 views
4

我有來檢查,如果任何2個字段爲空清潔方法的模型,如果是的話它會引發ValidationError測試的Django模型清潔方法

我怎麼能執行一個測試(通常我用鼻子),以實例而不會使測試失敗而失敗。我想做一些斷言來確保實例的創建失敗。

這是乾淨的方法:

def clean(self): 
    if not self.message and not self.image: 
     raise ValidationError('You must provide either Message and/or ' 
           'Image') 

回答

10

使用assertRaises()

instance = YourModel() 
self.assertRaises(ValidationError, instance.clean)