Как провести модульное тестирование "if request.user.is_superuser:" и "if request.method == 'POST':" с помощью фреймворка unittest
У меня есть представление, которое называется add_product. Теперь я хочу протестировать это представление с помощью фреймворка python unittest. В моей функции add_product я проверяю, что если пользователь является superuser и если request.method == 'POST' как я могу это сделать?
views.py
def add_product(request):
if request.user.is_superuser:
if request.method == 'POST':
product_name = request.POST['product_name']
product_category = request.POST['product_category']
product_price = request.POST['product_price']
product_photo = request.FILES['product_photo']
product_description = request.POST['product_description']
add_product = Product(product_name = product_name, category = product_category, price = product_price,
description = product_description, pub_date = datetime.today(), image = product_photo)
add_product.save()
return render(request, 'home/home.html')
else:
return HttpResponse("404-Not Found")
else:
return render(request, 'html_view_with_error', {"error" : "PERMISSION DENIED"})
вот моя попытка на данный момент
тест_просмотров
def test_add_product(self):
product = Product.objects.create(
product_id = 16,
product_name = "Mango",
category = "Fruit",
price = 350,
description = "Fresh Mangoes",
pub_date = "2022-02-18",
)
client = Client()
response = client.get(reverse('home'))
self.assertEquals(response.status_code, 200)
self.assertEqual(str(product), "Mango")