2010-12-10 4 views
0

プロファイルアバターモジュールを検証するためのユニットテストを書いています。だから、私はユーザーがアバターをアップロードすることができるフォームを持っています。存在する場合、現在のものを単に置き換えます。それはまだに設定されているため、常に失敗したアバター画像名をテストするためにDjangoユニットテストでの複数のPOST

f = open('testfile1.jpg') 
    data = {'image':f} 
    response = self.client.post('/profile/uploadavatar/',data) 
    self.assertEqual(response.status_code, 200) 
    self.assertEqual(self.user1.get_profile().avatar.image.name, u'uploads/images/testfile1.jpg') 
    f.close() 

    f = open('testfile2.jpg') 
    data = {'image':f} 
    response = self.client.post('/profile/uploadavatar/',data) 
    self.assertEqual(response.status_code, 200) 
    self.assertEqual(self.user1.get_profile().avatar.image.name, u'uploads/images/testfile2.jpg') 
    f.close() 

二assertEqual: - 私のテストで

は、私は次の(ここでは示されていないクラスの設定は、ユーザーがログに記録されます)か最初のファイル名(testfile1.jpg)。しかし、私はこれを手動でテストするとき、コードは私が考えるべきことをします。これは、古いアバターを新しいものに置き換えます。

何か間違っていますか?私はジャンゴユニットテストの新人ですので、私は非常に単純なものを見逃しているかもしれません...

アイデアをいただければ幸いです。

ありがとうございます!

+1

アップロードの間にユーザーオブジェクトをリロードします。 –

+0

アダムに感謝!それはそれでした:)歓声 – mapes911

答えて

0

"self.user1"オブジェクトは、プロファイルと共に最初からキャッシュされます。

アクション間でユーザー/プロファイルオブジェクトをリロードし、更新されたデータを表示します。

(コメントからプルアップ)

関連する問題