added widget and unit tests for plans, diets, recipes

This commit is contained in:
misha
2025-12-02 12:34:13 +03:00
parent b420d11996
commit 1738d27b82
17 changed files with 2822 additions and 191 deletions

View File

@@ -0,0 +1,73 @@
#!/bin/bash
# Script to remove generated files from coverage/lcov.info
# Generated files include: .g.dart, .freezed.dart, .mocks.dart
#
# Usage:
# ./scripts/remove_generated_from_coverage.sh
#
# This script:
# 1. Creates a backup of the original coverage file
# 2. Removes all entries for generated files (.g.dart, .freezed.dart, .mocks.dart)
# 3. Saves the cleaned file back to coverage/lcov.info
set -e # Exit on error
COVERAGE_FILE="coverage/lcov.info"
BACKUP_FILE="coverage/lcov.info.backup"
# Get the script directory and project root
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
PROJECT_ROOT="$(cd "$SCRIPT_DIR/.." && pwd)"
cd "$PROJECT_ROOT"
# Check if coverage file exists
if [ ! -f "$COVERAGE_FILE" ]; then
echo "Error: $COVERAGE_FILE not found"
echo "Please run 'flutter test --coverage' first to generate the coverage file"
exit 1
fi
# Create backup
cp "$COVERAGE_FILE" "$BACKUP_FILE"
echo "Backup created: $BACKUP_FILE"
# Remove entries for generated files
# This uses awk to process the lcov.info file
# It skips entries that start with SF: and contain .g.dart, .freezed.dart, or .mocks.dart
awk '
BEGIN {
skip_entry = 0
}
/^SF:/ {
# Check if this is a generated file
# Matches: .g.dart, .freezed.dart, .mocks.dart
if ($0 ~ /\.(g|freezed|mocks)\.dart$/) {
skip_entry = 1
} else {
skip_entry = 0
}
}
{
if (!skip_entry) {
print
}
}
/^end_of_record$/ {
skip_entry = 0
}
' "$BACKUP_FILE" > "$COVERAGE_FILE.tmp"
# Replace original file with cleaned version
mv "$COVERAGE_FILE.tmp" "$COVERAGE_FILE"
# Count removed entries
REMOVED=$(grep -c "^SF:.*\.\(g\|freezed\|mocks\)\.dart$" "$BACKUP_FILE" 2>/dev/null || echo "0")
echo "Removed $REMOVED generated file entries from coverage/lcov.info"
echo "Cleaned file saved to: $COVERAGE_FILE"
echo ""
echo "To restore the original file, run:"
echo " cp $BACKUP_FILE $COVERAGE_FILE"