私は最終的に私のDjangoアプリケーションのテストを設定していますが、始めに問題があります。model_mommy - 割り当て関係のユーザ
私がテストしているビューは、特定のユーザが完了しなければならないすべてのものを表示することになっています。これをテストするために、私は500件の課題を作成し、アプリにログインして表示されているかどうか確認したいと思います。これまでのところ私は、次のテストケースを持っている:
class TestLogin(TestCase):
def setUp(self):
self.client = Client()
user = User.objects.create(username='sam')
user.set_password('samspassword')
user.save()
def test_login(self):
self.client.login(username='sam', password='samspassword')
response = self.client.get('/')
print (response.content)
self.assertEqual(response.status_code, 200)
と
class TestShowAssignments(TestCase):
def setUp(self):
user_recipe = Recipe(User, username='sam', password="samspassword")
self.assignment = Recipe(Assignment,
coders = related(user_recipe))
self.assignments = self.assignment.make(_quantity=500)
def test_assignments(self):
self.assertIsInstance(self.assignments[0],Assignment)
self.assertEqual(len(self.assignments),500)
最初のテストはうまく通過して、それがどうあるべきかを行います。TestLogin
は、ユーザーがログインすると自分のアカウントページを示しています。 問題はTestShowAssignments
で始まり、割り当てが500件になりますが、割り当てをprint (self.assignments[0].coders)
にすればauth.User.None
となります。だから私は割り当てに関係として定義したユーザーを追加しません。ここで重要なのは、モデル内のcoders
フィールドがm2mフィールドであり、これはrelated
を使用してアドレス指定しようとしましたが、動作していないようです。
TestLogin
のログイン時に同じコードを使用してTestShowAssignments
にログインすると、ログインできず、ユーザーページも表示されません。
model_mommy
を使用して割り当てを作成し、特定のユーザーに追加するにはどうすればよいのですか。そのユーザーとしてログインし、割り当てが正しく表示されるかどうかを確認します。