Ich habe Probleme mit dem Schreiben eines Komponententests, der überprüft, ob mein benutzerdefiniertes Ressourcenpostattribut funktioniert. Ich habe es geschafft, es mit einer einfachen manuellen jQuery arbeiten zu lassen, aber das ist nicht hilfreich für Langzeittests.tastypie- und django-Testfälle
Angenommen, mein Test wie folgt aussieht:
def testCollectionPost(self):
""" Test Create Entry operation.
"""
initialData = self.client.get(self.collectionUrl, format='json')
jsonObject = json.loads(initialData.content)
initialCount = jsonObject['meta']['total_count']
dataToPost = {'id': initialCount + 1} # Real version contains other appropiate data
response = self.client.post(self.collectionUrl, data=json.dumps(dataToPost), content_type='application/json')
self.assertEqual(response.status_code, 201)
responseGet = self.client.get(self.collectionUrl, format='json')
jsonObject = json.loads(responseGet.content)
self.assertEqual(jsonObject['meta']['total_count'], initialCount + 1)
Das gibt mir ein 500-Fehler zurück, und ich habe ganz und gar nicht in der Lage gewesen, wieder eine echte Rückverfolgung zu erhalten.
Aus meiner Hauptseite, lief ich die folgenden, die gut funktioniert:
dataToPost = {'id': 277} # Real version has more data, that matches the unit test.
pResp = $.ajax({ type: 'POST',
url: 'http://nelsog2.blah.example.com/metrics/api/v1/system_info/',
data: JSON.stringify(dataToPost),
contentType: 'application/json'})
Wer fo eine Idee, was das Problem ist?