code

🧩 Syntax:
from django.test import TestCase
from django.urls import reverse
from django.contrib.auth import get_user_model

from wepynaire.tips.models import Category, Tip
User = get_user_model()

class TestTipsHomeView(TestCase):
    def setUp(self):
        self.python_category = Category.objects.create(name="My first tip")
        self.author = User.objects.create_user(username="testuser", password="mySuperPassword.77")
        self.tips = [
            
            Tip.objects.create(
                title="Mon premier tip de test",
                author=self.author,
                image="tips/images/astuce-decimal.png",
            )
        ]

    def test_view_returns_ok(self):
        """ Vérifie que l'appel à home retourne du 200 """
        # 1. Setup du test

        # 2. Appel de la fonction à tester
        response = self.client.get(reverse('home'))
        # 3. Vérification de la répponse
        self.assertEqual(response.status_code, 200)

    def test_view_renders_home_template(self):
        """ Vérifie que l'appel à home retourne le template home/template """
        # 1. Setup du test
        
        # 2. Appel de la fonction à tester
        response = self.client.get(reverse('home'))
        # 3. Vérification de la répponse
        self.assertTemplateUsed("tips/home.html")

    def test_home_view_has_four_tips_in_context(self):
        # 1. Setup du test
        

        # 2. Appel de la fonction à tester
        response = self.client.get(reverse('home'))
        
        # 3. Vérification de la répponse
        self.assertIn("tips", response.context)
        self.assertEqual(len(response.context["tips"]), 1)



class TestTipsDetailView(TestCase):
    ...