SORU
19 HAZİRAN 2012, Salı


Nasıl Django DoesNotExist hariç alabilirim?

Bir nesne silinmiş olduğunu doğrulamak için bir UnitTest oluşturmak için çalışıyorum.

from django.utils import unittest
def test_z_Kallie_can_delete_discussion_response(self):
  ...snip...
  self._driver.get("http://localhost:8000/questions/3/want-a-discussion") 
  self.assertRaises(Answer.DoesNotExist, Answer.objects.get(body__exact = '<p>User can reply to discussion.</p>'))

Hata almaya devam ediyorum:

DoesNotExist: Answer matching query does not exist.

CEVAP
19 HAZİRAN 2012, Salı


Zaten düzgün, DoesNotExist modelin kendi özelliğidir, bu durumda Answer yazdığın gibi almaya gerek yok.

Senin sorunun assertRaises geçirilmeden önce get yöntemi özel durum yükseltir - - aradığınız bu. unittest documentation: çağrı, olarak tanımlanan bağımsız değişkenler ayrı

self.assertRaises(Answer.DoesNotExist, Answer.objects.get, body__exact='<p>User can reply to discussion.</p>')

ya da daha iyisi:

with self.assertRaises(Answer.DoesNotExist):
    Answer.objects.get(body__exact='<p>User can reply to discussion.</p>')

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Lupe Fiasco

    Lupe Fiasco

    23 ŞUBAT 2006
  • michal lelkowski

    michal lelko

    9 Temmuz 2006
  • sebsebdouze

    sebsebdouze

    7 ŞUBAT 2008