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

  • rtisticsdev

    rtisticsdev

    31 Mayıs 2012
  • The Pet Collective

    The Pet Coll

    5 Ocak 2012
  • FusioNGamiing

    FusioNGamiin

    10 Temmuz 2007