2011-03-28 138 views
0

我正在對模型進行單元測試。django模型單元測試

此試運行OK

def test_event_creation(self): 
    new_user = User.objects.create_user(**self.user_info) 
    new_event = Event.objects.create(name="Event test", user=new_user, 
     start_date=datetime.date(2011,07,03), end_date=datetime.date(2011,07,10), 
     start_time=datetime.time(8,30), end_time=datetime.time(18,00)) 

    self.assertEqual(Event.objects.count(), 1) 

的問題是,我需要太測試模型錯誤,例如無效的名稱。 在這種情況下,執行測試向我顯示一個錯誤(我試圖測試的錯誤)

我怎麼能得到這個錯誤來比較一個斷言,並確定是否是suppost錯誤?成爲。

(也許我必須使用:assertRaisesRegexp)

回答

2
self.assertRaises(exception, function, parameters) 

異常:類型錯誤,ValueError異常,http://www.python.org/doc/essays/stdexceptions.html 功能:Event.objects.create 參數:用戶= new_user,START_DATE = datetime.date(2011年, 07,03),等等

例如:

def test_event_creation(self): 
    new_user = User.objects.create_user(**self.user_info) 
    self.assertRaises(TypeError, Event.objects.create,name="Event test", user=new_user, 
     start_date=datetime.date(2011,07,03), end_date=datetime.date(2011,07,10), 
     start_time=datetime.time(8,30), end_time=datetime.time(18,00))