tryiong to fix the details page

This commit is contained in:
2025-09-29 13:58:50 -07:00
parent f63b752246
commit 4a3ab4042a
2 changed files with 38 additions and 3 deletions

29
TDD_RULES.md Normal file
View File

@@ -0,0 +1,29 @@
# TDD Development Rules
This document outlines the rules for Test-Driven Development (TDD) using pytest within our containerized environment.
## Principles
- **Test-First Approach**: All new features must begin with writing a failing test.
- **Debug-Driven Tests**: When a bug is identified during debugging, a new pytest must be created to reproduce the bug and validate its fix.
## Pytest Execution
Pytest should be run within the Docker Compose environment to ensure consistency and isolation.
### Running Specific Tests
To run tests for a specific file:
```bash
docker compose build
docker compose run --remove-orphans foodtracker pytest tests/<test filename>
```
### Running All Tests
To run all tests in the project:
```bash
docker compose build
docker compose run --remove-orphans foodtracker pytest

View File

@@ -7,11 +7,17 @@ import pytest
class TestWeeklyMenuRoutes: class TestWeeklyMenuRoutes:
"""Test weekly menu-related routes""" """Test weekly menu-related routes"""
def test_get_weekly_menu_page(self, client): def test_get_weekly_menu_page(self, client, sample_weekly_menu, sample_template):
"""Test GET /weeklymenu page""" """Test GET /weeklymenu page displays weekly menus correctly"""
response = client.get("/weeklymenu") response = client.get("/weeklymenu")
assert response.status_code == 200 assert response.status_code == 200
assert b"Weekly" in response.content or b"weekly" in response.content or b"Menu" in response.content
# Check for the presence of the weekly menu name
assert sample_weekly_menu.name.encode('utf-8') in response.content
# Check for the assigned templates' names
for weekly_menu_day in sample_weekly_menu.weekly_menu_days:
assert weekly_menu_day.template.name.encode('utf-8') in response.content
def test_create_weekly_menu_route(self, client, sample_template): def test_create_weekly_menu_route(self, client, sample_template):