Вредительская практика в цикле for [дубликат]
1- в приведенном ниже коде я получаю ошибку имя должно быть уникальным, потому что есть цикл в for...
def test_new_user_email_normalized(self):
"""Test email is normalized for new users."""
sample_emails = [
["test1@EXAMPLE.com", "test1@example.com"],
["Test2@Example.com", "Test2@example.com"],
["TEST3@EXAMPLE.com", "TEST3@example.com"],
["test4@example.COM", "test4@example.com"],
]
for email, expected in sample_emails:
user = get_user_model().objects.create_user(email, name, "sample123")
self.assertEqual(user.email, expected)
Я устранил проблему, отредактировав код таким образом
def test_new_user_email_normalized(self):
"""Test email is normalized for new users."""
sample_emails = [
["test1@EXAMPLE.com", "test1@example.com"],
["Test2@Example.com", "Test2@example.com"],
["TEST3@EXAMPLE.com", "TEST3@example.com"],
["test4@example.COM", "test4@example.com"],
]
n = 1 # new
for email, expected in sample_emails:
n = n + 1 # new
name = "name" + str(n) # new
user = get_user_model().objects.create_user(email, name, "sample123")
self.assertEqual(user.email, expected)
и вот мой вопрос правильно ли я сделал это, как в лучшей практике или что-то еще, или есть лучший способ, как в моем вопросе 2, например?
2- могу ли я добавить свое условие в самом "for", например
for email, expected in sample_emails and n in range(1,5):