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

  • Dirty Loops

    Dirty Loops

    21 Mayıs 2007
  • KarnasCamillo

    KarnasCamill

    24 EKİM 2007
  • Tracy Hairston

    Tracy Hairst

    22 Mayıs 2009