diff --git a/.gitignore b/.gitignore index 7193297..e3fbc04 100644 --- a/.gitignore +++ b/.gitignore @@ -18,6 +18,9 @@ **/coverage.xml **/htmlcov/ **/coverage/ +frontend/test_results.txt +frontend/test_output.txt +frontend/final_test_results.txt # Uploads and cache **/uploads/ diff --git a/frontend/final_test_results.txt b/frontend/final_test_results.txt deleted file mode 100644 index fbd7e79..0000000 --- a/frontend/final_test_results.txt +++ /dev/null @@ -1,176 +0,0 @@ - -> nutrisync-frontend@0.0.0 test:run -> vitest run --reporter=verbose --coverage - - - RUN  v4.0.16 C:/Users/User/nutrisync/nutrisync/frontend - Coverage enabled with v8 - - ✓ src/pages/__tests__/Register.test.jsx > Register > renders registration form 136ms - ✓ src/pages/__tests__/Register.test.jsx > Register > displays email input field 26ms - ✓ src/pages/__tests__/Register.test.jsx > Register > displays password input fields 42ms - ✓ src/pages/__tests__/Profile.test.jsx > Profile Page > renders profile page after loading 181ms - ✓ src/components/__tests__/SetGoals.test.jsx > SetGoals Component > renders goals form with current values including fasting 130ms - ✓ src/components/__tests__/SetGoals.test.jsx > SetGoals Component > displays current goal values in inputs when editing including fasting 19ms - ✓ src/pages/__tests__/Profile.test.jsx > Profile Page > displays user email 60ms - ✓ src/components/__tests__/SetGoals.test.jsx > SetGoals Component > allows updating fasting schedule 142ms - ✓ src/components/__tests__/SetGoals.test.jsx > SetGoals Component > validates numeric input 21ms - ✓ src/components/__tests__/SetGoals.test.jsx > SetGoals Component > shows loading state 19ms - ✓ src/components/__tests__/SetGoals.test.jsx > SetGoals Component > shows fasting indicator when fasting is enabled 16ms - ✓ src/components/__tests__/SetGoals.test.jsx > SetGoals Component > does not show fasting indicator when disabled 14ms - ✓ src/components/__tests__/SetGoals.test.jsx > SetGoals Component > displays protein, carbs, and fat in summary 19ms - ✓ src/components/__tests__/SetGoals.test.jsx > SetGoals Component > uses default values when goals are null 50ms - ✓ src/components/__tests__/MealForm.extended.test.jsx > MealForm - Comprehensive Tests > renders autocomplete mode by default 110ms - ✓ src/components/__tests__/MealForm.extended.test.jsx > MealForm - Comprehensive Tests > allows selecting meal type 536ms - ✓ src/components/__tests__/MealForm.extended.test.jsx > MealForm - Comprehensive Tests > adds food through search 90ms - ✓ src/pages/__tests__/Register.test.jsx > Register > shows password requirements 104ms - ✓ src/pages/__tests__/Register.test.jsx > Register > validates password strength 923ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > renders meal form with all required fields 1038ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > handles manual meal entry 32ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > validates required fields 12ms - ✓ src/pages/__tests__/Login.test.jsx > Login Page > renders login form 932ms - ✓ src/pages/__tests__/Register.test.jsx > Register > checks password match confirmation 105ms - ✓ src/pages/__tests__/Register.test.jsx > Register > validates email format 34ms - ✓ src/pages/__tests__/Register.test.jsx > Register > displays Google sign-up button 41ms - ✓ src/components/__tests__/MealForm.extended.test.jsx > MealForm - Comprehensive Tests > shows manual entry mode toggle 331ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > calculates total nutrition correctly 207ms - ✓ src/pages/__tests__/Profile.test.jsx > Profile Page > loads user profile data 128ms - ✓ src/components/__tests__/MealForm.extended.test.jsx > MealForm - Comprehensive Tests > allows switching to manual mode 368ms - ✓ src/components/__tests__/MealForm.extended.test.jsx > MealForm - Comprehensive Tests > calculates total nutrition from added foods 34ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > handles food search integration 219ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > allows editing existing meal 30ms - ✓ src/pages/__tests__/Login.test.jsx > Login Page > displays login button 507ms - ✓ src/pages/__tests__/Login.test.jsx > Login Page > accepts email and password input 63ms - ✓ src/pages/__tests__/Profile.test.jsx > Profile Page > shows dietary tab with restrictions 1232ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > handles meal type selection 198ms - ✓ src/pages/__tests__/Landing.test.jsx > Landing Page > renders main heading 1838ms - ✓ src/pages/__tests__/Register.test.jsx > Register > shows link to login page 65ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > handles form submission 101ms - ✓ src/components/__tests__/MealForm.extended.test.jsx > MealForm - Comprehensive Tests > submits meal successfully 299ms - ✓ src/pages/__tests__/Login.test.jsx > Login Page > calls supabase signIn on form submission 326ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > handles cancel action 173ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > shows loading state during submission 44ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > displays error messages on failure 35ms - ✓ src/pages/__tests__/Login.test.jsx > Login Page > displays error message on failed login 353ms - ✓ src/pages/__tests__/Login.test.jsx > Login Page > includes link to registration page 30ms - ✓ src/pages/__tests__/Login.test.jsx > Login Page > includes forgot password link 23ms - ✓ src/pages/__tests__/Login.test.jsx > Login Page > validates email format 26ms - ✓ src/components/__tests__/MealForm.extended.test.jsx > MealForm - Comprehensive Tests > shows loading state during submission 336ms - ✓ src/pages/__tests__/Register.test.jsx > Register > handles successful registration 508ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > allows adding multiple food items 154ms - ✓ src/components/__tests__/MealForm.extended.test.jsx > MealForm - Comprehensive Tests > allows removing added foods 188ms - ✓ src/components/__tests__/MealForm.extended.test.jsx > MealForm - Comprehensive Tests > allows adding notes to meal 92ms - ✓ src/pages/__tests__/Landing.test.jsx > Landing Page > displays call-to-action buttons 102ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > handles portion size adjustments 144ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > validates nutrition values are non-negative 15ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > supports meal photo attachment 45ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > removes food items from list 1ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > updates serving sizes correctly 0ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > handles duplicate food additions 0ms - ✓ src/components/__tests__/MealForm.extended.test.jsx > MealForm - Comprehensive Tests > displays meal nutrition summary 39ms - ✓ src/pages/__tests__/Login.test.jsx > Login Page > handles Google OAuth login 81ms - ✓ src/pages/__tests__/Login.test.jsx > Login Page > displays OAuth error from localStorage on mount 41ms - ✓ src/pages/__tests__/Register.test.jsx > Register > displays error on registration failure 409ms - ✓ src/components/__tests__/MealForm.extended.test.jsx > MealForm - Comprehensive Tests > validates required fields before submission 118ms - ✓ src/components/__tests__/MealForm.extended.test.jsx > MealForm - Comprehensive Tests > allows adjusting portion sizes 31ms - ✓ src/components/__tests__/MealForm.extended.test.jsx > MealForm - Comprehensive Tests > updates nutrition when portions change 24ms - ✓ src/pages/__tests__/Profile.test.jsx > Profile Page > handles password reset 791ms - ✓ src/pages/__tests__/Login.test.jsx > Login Page > toggles password visibility 260ms - ✓ src/pages/__tests__/Landing.test.jsx > Landing Page > shows feature sections 552ms - ✓ src/pages/__tests__/Register.test.jsx > Register > shows loading state during registration 334ms - ✓ src/pages/__tests__/Landing.test.jsx > Landing Page > includes navigation links 453ms - ✓ src/pages/__tests__/Login.test.jsx > Login Page > handles remember me checkbox 324ms - ✓ src/pages/__tests__/Landing.test.jsx > Landing Page > renders footer with privacy and terms links 147ms - ✓ src/pages/__tests__/Login.test.jsx > Login Page > shows loading state during login 248ms - ✓ src/pages/__tests__/Profile.test.jsx > Profile Page > shows password reset success message 459ms - ✓ src/pages/__tests__/Register.test.jsx > Register > disables submit button with invalid input 292ms - ✓ src/pages/__tests__/Register.test.jsx > Register > handles Google OAuth registration 94ms - ✓ src/pages/__tests__/Login.test.jsx > Login Page > handles Google OAuth error 140ms - ✓ src/pages/__tests__/Login.test.jsx > Login Page > shows link to signup page when no account found 232ms - ✓ src/pages/__tests__/Register.test.jsx > Register > shows success message after email confirmation sent 388ms - ✓ src/pages/__tests__/Profile.test.jsx > Profile Page > handles password reset error 528ms - ✓ src/pages/__tests__/Register.test.jsx > Register > prevents multiple submissions 294ms - ✓ src/pages/__tests__/Profile.test.jsx > Profile Page > opens delete account confirmation dialog 378ms - ✓ src/pages/__tests__/Profile.test.jsx > Profile Page > calculates and displays nutrition goals 418ms - ✓ src/pages/__tests__/Register.test.jsx > Register > detects existing user by empty identities array 293ms - ✓ src/pages/__tests__/Register.test.jsx > Register > validates email format before submission 38ms - ✓ src/pages/__tests__/Register.test.jsx > Register > toggles password visibility 378ms - ✓ src/pages/__tests__/Register.test.jsx > Register > displays OAuth error from localStorage on mount 41ms - ✓ src/pages/__tests__/Register.test.jsx > Register > handles Google OAuth error 62ms - ✓ src/pages/__tests__/Profile.test.jsx > Profile Page > displays BMI information 102ms - ✓ src/pages/__tests__/Profile.test.jsx > Profile Page > switches between profile and dietary tabs 424ms - ✓ src/pages/__tests__/Profile.test.jsx > Profile Page > saves profile updates 460ms - ✓ src/pages/__tests__/Profile.test.jsx > Profile Page > validates required fields before calculating goals 321ms - ✓ src/pages/__tests__/Profile.test.jsx > Profile Page > renders loading state initially 7ms - ✓ src/pages/__tests__/Dashboard.test.jsx > Dashboard Page > renders dashboard components 231ms - ✓ src/pages/__tests__/Dashboard.test.jsx > Dashboard Page > displays date selector 16ms - ✓ src/pages/__tests__/Dashboard.test.jsx > Dashboard Page > shows reminders card 7ms - ✓ src/pages/__tests__/Dashboard.test.jsx > Dashboard Page > renders chart components 7ms - ✓ src/pages/__tests__/Dashboard.test.jsx > Dashboard Page > displays sidebar navigation 36ms - ✓ src/pages/__tests__/Dashboard.test.jsx > Dashboard Page > handles component mounting without errors 8ms - ✓ src/pages/__tests__/Dashboard.test.jsx > Dashboard Page > renders page container 58ms - ✓ src/components/__tests__/FoodSearchInput.test.jsx > FoodSearchInput Component > renders search input 116ms - ✓ src/components/__tests__/FoodSearchInput.test.jsx > FoodSearchInput Component > performs search on user input 35ms - ✓ src/components/__tests__/FoodSearchInput.test.jsx > FoodSearchInput Component > displays search results 10ms - ✓ src/components/__tests__/FoodSearchInput.test.jsx > FoodSearchInput Component > calls onSelect when food item is clicked 9ms - ✓ src/components/__tests__/FoodSearchInput.test.jsx > FoodSearchInput Component > handles search errors gracefully 20ms - ✓ src/components/__tests__/FoodSearchInput.test.jsx > FoodSearchInput Component > clears results when input is empty 13ms - ✓ src/components/__tests__/FoodSearchInput.test.jsx > FoodSearchInput Component > has quantity input field 17ms - ✓ src/components/__tests__/FoodSearchInput.test.jsx > FoodSearchInput Component > allows changing quantity 13ms - ✓ src/components/__tests__/FoodSearchInput.test.jsx > FoodSearchInput Component > defaults quantity to 1 11ms - ✓ src/components/__tests__/FoodSearchInput.test.jsx > FoodSearchInput Component > accepts decimal quantities 22ms - ✓ src/components/__tests__/FoodSearchInput.test.jsx > FoodSearchInput Component > accepts initialValue prop 53ms - ✓ src/components/charts/__tests__/MacroBreakdownChart.test.jsx > MacroBreakdownChart > renders chart with valid data 98ms - ✓ src/components/charts/__tests__/MacroBreakdownChart.test.jsx > MacroBreakdownChart > shows empty state when no data 26ms - ✓ src/components/charts/__tests__/MacroBreakdownChart.test.jsx > MacroBreakdownChart > shows empty state when all values are zero 7ms - ✓ src/components/charts/__tests__/MacroBreakdownChart.test.jsx > MacroBreakdownChart > filters out zero values from chart 9ms - ✓ src/components/charts/__tests__/MacroBreakdownChart.test.jsx > MacroBreakdownChart > renders with legend by default 23ms - ✓ src/components/charts/__tests__/MacroBreakdownChart.test.jsx > MacroBreakdownChart > can hide legend when showLegend is false 10ms - ✓ src/components/charts/__tests__/MacroBreakdownChart.test.jsx > MacroBreakdownChart > handles missing macro values gracefully 18ms - ✓ src/components/charts/__tests__/MacroBreakdownChart.test.jsx > MacroBreakdownChart > rounds decimal values to one decimal place 15ms - ✓ src/components/__tests__/ChartErrorBoundary.test.jsx > ChartErrorBoundary > renders children when there is no error 92ms - ✓ src/components/__tests__/ChartErrorBoundary.test.jsx > ChartErrorBoundary > renders error message when child component throws 30ms - ✓ src/components/__tests__/ChartErrorBoundary.test.jsx > ChartErrorBoundary > displays error icon when error occurs 16ms - ✓ src/components/__tests__/ChartErrorBoundary.test.jsx > ChartErrorBoundary > prevents error from propagating to parent 11ms - ✓ src/contexts/__tests__/FastingContext.test.jsx > FastingContext Full > fasting timer functionality works in browser 3ms - ✓ src/contexts/__tests__/FastingContext.test.jsx > FastingContext Full > starts a new fast correctly 0ms - ✓ src/contexts/__tests__/FastingContext.test.jsx > FastingContext Full > loads active session on mount 0ms - ✓ src/pages/__tests__/Logging.test.jsx > Logging Page > renders logging page 119ms - ✓ src/pages/__tests__/Logging.test.jsx > Logging Page > shows meal form 7ms - ✓ src/pages/__tests__/Logging.test.jsx > Logging Page > displays sidebar navigation 11ms - ✓ src/pages/__tests__/Logging.test.jsx > Logging Page > renders page container 27ms - ✓ src/pages/__tests__/Logging.test.jsx > Logging Page > handles component mounting without errors 8ms - ✓ src/components/fasting/__tests__/FastingToggle.test.jsx > FastingToggle > renders "Start Fasting" button initially 3ms - ✓ src/components/fasting/__tests__/FastingToggle.test.jsx > FastingToggle > shows timer and "End Fast" when fasting is active 0ms - ✓ src/components/fasting/__tests__/FastingToggle.test.jsx > FastingToggle > displays progress correctly 0ms - ✓ src/contexts/__tests__/GoalsContext.test.jsx > GoalsContext > provides default goals when no user data exists 3ms - ✓ src/contexts/__tests__/GoalsContext.test.jsx > GoalsContext > loads existing user goals 0ms - ✓ src/contexts/__tests__/GoalsContext.test.jsx > GoalsContext > handles loading state correctly 0ms - ✓ src/components/dashboard/__tests__/RemindersCard.test.jsx > RemindersCard > shows hydration reminder during fast 3ms - ✓ src/components/dashboard/__tests__/RemindersCard.test.jsx > RemindersCard > shows fasting goal met reminder when time is up 0ms - - Test Files  16 passed (16) - Tests  142 passed (142) - Start at  05:20:48 - Duration  17.21s (transform 6.25s, setup 12.36s, import 11.13s, tests 23.57s, environment 41.89s) - - % Coverage report from v8 --------------------|---------|----------|---------|---------|------------------- -File | % Stmts | % Branch | % Funcs | % Lines | Uncovered Line #s --------------------|---------|----------|---------|---------|------------------- -All files | 52.95 | 50 | 34.92 | 55.49 | - components | 42.8 | 38.97 | 31.57 | 43.75 | - ...rBoundary.jsx | 100 | 100 | 100 | 100 | - ...archInput.jsx | 37.87 | 16.27 | 38.88 | 38.98 | ...97-111,132-223 - MealForm.jsx | 43.42 | 36.36 | 31.42 | 44.44 | ...70-429,458-568 - SetGoals.jsx | 37.5 | 50 | 10.52 | 36.66 | ...9,72-73,85-286 - components/charts | 72.72 | 90.9 | 40 | 72.72 | - ...downChart.jsx | 72.72 | 90.9 | 40 | 72.72 | 25-37,69 - pages | 57.64 | 55.55 | 36.71 | 61.11 | - Dashboard.jsx | 87.87 | 59.52 | 62.5 | 96.66 | 71 - Landing.jsx | 100 | 100 | 100 | 100 | - Logging.jsx | 33.84 | 25.8 | 11.32 | 37.83 | ...44-146,186-494 - Login.jsx | 86.95 | 95 | 100 | 86.95 | 29-30,53,82-84 - Profile.jsx | 52.23 | 51.48 | 30.23 | 54.41 | ...88,624,686-768 - Register.jsx | 80.59 | 88.46 | 90.9 | 80.59 | ...85,115-117,289 --------------------|---------|----------|---------|---------|------------------- diff --git a/frontend/fix_motion.py b/frontend/fix_motion.py deleted file mode 100644 index 863587f..0000000 --- a/frontend/fix_motion.py +++ /dev/null @@ -1,31 +0,0 @@ -#!/usr/bin/env python3 -import os -import re -from pathlib import Path - -# Change to src directory -src_dir = Path(__file__).parent / 'src' - -# Find all .jsx files -jsx_files = list(src_dir.rglob('*.jsx')) - -for file_path in jsx_files: - with open(file_path, 'r', encoding='utf-8') as f: - content = f.read() - - # Skip if already uses Motion - if 'motion as Motion' in content: - continue - - # Replace motion imports - content = content.replace("import { motion } from 'motion/react'", "import { motion as Motion } from 'motion/react'") - content = content.replace("import { motion, AnimatePresence }", "import { motion as Motion, AnimatePresence }") - - # Replace motion element usage - content = re.sub(r'', r'', content) - - # Fix motion. in self-closing tags to Motion. - content = re.sub(r'', r'', content) - - if content != original: - with open(file_path, 'w', encoding='utf-8') as f: - f.write(content) - print(f"Fixed {file_path}") - -print("Done!") diff --git a/frontend/test_output.txt b/frontend/test_output.txt deleted file mode 100644 index 290b8b3..0000000 --- a/frontend/test_output.txt +++ /dev/null @@ -1,156 +0,0 @@ - -> nutrisync-frontend@0.0.0 test:run -> vitest run - - - RUN  v4.0.16 C:/Users/User/nutrisync/nutrisync/frontend - - ✓ src/pages/__tests__/Register.test.jsx > Register > renders registration form 109ms - ✓ src/pages/__tests__/Register.test.jsx > Register > displays email input field 68ms - ✓ src/pages/__tests__/Profile.test.jsx > Profile Page > renders profile page after loading 170ms - ✓ src/components/__tests__/SetGoals.test.jsx > SetGoals Component > renders goals form with current values including fasting 136ms - ✓ src/components/__tests__/SetGoals.test.jsx > SetGoals Component > displays current goal values in inputs when editing including fasting 20ms - ✓ src/pages/__tests__/Register.test.jsx > Register > displays password input fields 56ms - ✓ src/pages/__tests__/Profile.test.jsx > Profile Page > displays user email 81ms - ✓ src/components/__tests__/SetGoals.test.jsx > SetGoals Component > allows updating fasting schedule 123ms - ✓ src/components/__tests__/SetGoals.test.jsx > SetGoals Component > validates numeric input 87ms - ✓ src/components/__tests__/SetGoals.test.jsx > SetGoals Component > shows loading state 51ms - ✓ src/components/__tests__/SetGoals.test.jsx > SetGoals Component > shows fasting indicator when fasting is enabled 22ms - ✓ src/components/__tests__/SetGoals.test.jsx > SetGoals Component > does not show fasting indicator when disabled 35ms - ✓ src/components/__tests__/SetGoals.test.jsx > SetGoals Component > displays protein, carbs, and fat in summary 24ms - ✓ src/components/__tests__/SetGoals.test.jsx > SetGoals Component > uses default values when goals are null 33ms - ✓ src/components/__tests__/MealForm.extended.test.jsx > MealForm - Comprehensive Tests > renders autocomplete mode by default 87ms - ✓ src/pages/__tests__/Login.test.jsx > Login Page > renders login form 909ms - ✓ src/components/__tests__/MealForm.extended.test.jsx > MealForm - Comprehensive Tests > allows selecting meal type 818ms - ✓ src/components/__tests__/MealForm.extended.test.jsx > MealForm - Comprehensive Tests > adds food through search 74ms - ✓ src/pages/__tests__/Register.test.jsx > Register > shows password requirements 111ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > renders meal form with all required fields 1032ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > handles manual meal entry 20ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > validates required fields 14ms - ✓ src/pages/__tests__/Landing.test.jsx > Landing Page > renders main heading 1460ms - ✓ src/pages/__tests__/Login.test.jsx > Login Page > displays login button 214ms - ✓ src/pages/__tests__/Register.test.jsx > Register > validates password strength 855ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > calculates total nutrition correctly 188ms - ✓ src/pages/__tests__/Register.test.jsx > Register > checks password match confirmation 130ms - ✓ src/pages/__tests__/Register.test.jsx > Register > validates email format 96ms - ✓ src/pages/__tests__/Profile.test.jsx > Profile Page > loads user profile data 100ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > handles food search integration 142ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > allows editing existing meal 44ms - ✓ src/pages/__tests__/Login.test.jsx > Login Page > accepts email and password input 127ms - ✓ src/components/__tests__/MealForm.extended.test.jsx > MealForm - Comprehensive Tests > shows manual entry mode toggle 162ms - ✓ src/pages/__tests__/Register.test.jsx > Register > displays Google sign-up button 44ms - ✓ src/pages/__tests__/Profile.test.jsx > Profile Page > shows dietary tab with restrictions 1142ms - ✓ src/components/__tests__/MealForm.extended.test.jsx > MealForm - Comprehensive Tests > allows switching to manual mode 414ms - ✓ src/components/__tests__/MealForm.extended.test.jsx > MealForm - Comprehensive Tests > calculates total nutrition from added foods 87ms - ✓ src/pages/__tests__/Landing.test.jsx > Landing Page > displays call-to-action buttons 125ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > handles meal type selection 98ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > handles form submission 77ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > handles cancel action 173ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > shows loading state during submission 57ms - ✓ src/pages/__tests__/Login.test.jsx > Login Page > calls supabase signIn on form submission 277ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > displays error messages on failure 30ms - ✓ src/pages/__tests__/Register.test.jsx > Register > shows link to login page 106ms - ✓ src/pages/__tests__/Login.test.jsx > Login Page > displays error message on failed login 449ms - ✓ src/pages/__tests__/Login.test.jsx > Login Page > includes link to registration page 92ms - ✓ src/pages/__tests__/Login.test.jsx > Login Page > includes forgot password link 111ms - ✓ src/pages/__tests__/Login.test.jsx > Login Page > validates email format 31ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > allows adding multiple food items 320ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > handles portion size adjustments 210ms - ✓ src/pages/__tests__/Landing.test.jsx > Landing Page > shows feature sections 509ms - ✓ src/pages/__tests__/Login.test.jsx > Login Page > handles Google OAuth login 128ms - ✓ src/components/__tests__/MealForm.extended.test.jsx > MealForm - Comprehensive Tests > submits meal successfully 362ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > validates nutrition values are non-negative 138ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > supports meal photo attachment 86ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > removes food items from list 1ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > updates serving sizes correctly 1ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > handles duplicate food additions 0ms - ✓ src/components/__tests__/MealForm.extended.test.jsx > MealForm - Comprehensive Tests > shows loading state during submission 574ms - ✓ src/pages/__tests__/Landing.test.jsx > Landing Page > includes navigation links 827ms - ✓ src/pages/__tests__/Landing.test.jsx > Landing Page > renders footer with privacy and terms links 332ms - ✓ src/pages/__tests__/Login.test.jsx > Login Page > displays OAuth error from localStorage on mount 233ms - ✓ src/components/__tests__/MealForm.extended.test.jsx > MealForm - Comprehensive Tests > allows removing added foods 307ms - ✓ src/pages/__tests__/Register.test.jsx > Register > handles successful registration 575ms - ✓ src/pages/__tests__/Profile.test.jsx > Profile Page > handles password reset 839ms - ✓ src/pages/__tests__/Login.test.jsx > Login Page > toggles password visibility 375ms - ✓ src/components/__tests__/MealForm.extended.test.jsx > MealForm - Comprehensive Tests > allows adding notes to meal 207ms - ✓ src/components/__tests__/MealForm.extended.test.jsx > MealForm - Comprehensive Tests > displays meal nutrition summary 54ms - ✓ src/components/__tests__/MealForm.extended.test.jsx > MealForm - Comprehensive Tests > validates required fields before submission 116ms - ✓ src/components/__tests__/MealForm.extended.test.jsx > MealForm - Comprehensive Tests > allows adjusting portion sizes 60ms - ✓ src/components/__tests__/MealForm.extended.test.jsx > MealForm - Comprehensive Tests > updates nutrition when portions change 25ms - ✓ src/pages/__tests__/Login.test.jsx > Login Page > handles remember me checkbox 308ms - ✓ src/pages/__tests__/Register.test.jsx > Register > displays error on registration failure 993ms - ✓ src/pages/__tests__/Profile.test.jsx > Profile Page > shows password reset success message 874ms - ✓ src/pages/__tests__/Login.test.jsx > Login Page > shows loading state during login 213ms - ✓ src/pages/__tests__/Register.test.jsx > Register > shows loading state during registration 340ms - ✓ src/pages/__tests__/Login.test.jsx > Login Page > handles Google OAuth error 129ms - ✓ src/pages/__tests__/Login.test.jsx > Login Page > shows link to signup page when no account found 217ms - ✓ src/pages/__tests__/Profile.test.jsx > Profile Page > handles password reset error 328ms - ✓ src/pages/__tests__/Register.test.jsx > Register > disables submit button with invalid input 249ms - ✓ src/pages/__tests__/Register.test.jsx > Register > handles Google OAuth registration 96ms - ✓ src/pages/__tests__/Profile.test.jsx > Profile Page > opens delete account confirmation dialog 342ms - ✓ src/pages/__tests__/Register.test.jsx > Register > shows success message after email confirmation sent 253ms - ✓ src/pages/__tests__/Profile.test.jsx > Profile Page > calculates and displays nutrition goals 354ms - ✓ src/pages/__tests__/Register.test.jsx > Register > prevents multiple submissions 202ms - ✓ src/pages/__tests__/Register.test.jsx > Register > detects existing user by empty identities array 264ms - ✓ src/pages/__tests__/Profile.test.jsx > Profile Page > displays BMI information 100ms - ✓ src/pages/__tests__/Register.test.jsx > Register > validates email format before submission 106ms - ✓ src/pages/__tests__/Profile.test.jsx > Profile Page > switches between profile and dietary tabs 394ms - ✓ src/pages/__tests__/Register.test.jsx > Register > toggles password visibility 274ms - ✓ src/pages/__tests__/Register.test.jsx > Register > displays OAuth error from localStorage on mount 37ms - ✓ src/pages/__tests__/Register.test.jsx > Register > handles Google OAuth error 95ms - ✓ src/pages/__tests__/Profile.test.jsx > Profile Page > saves profile updates 362ms - ✓ src/pages/__tests__/Profile.test.jsx > Profile Page > validates required fields before calculating goals 219ms - ✓ src/pages/__tests__/Profile.test.jsx > Profile Page > renders loading state initially 5ms - ✓ src/components/__tests__/FoodSearchInput.test.jsx > FoodSearchInput Component > renders search input 146ms - ✓ src/components/__tests__/FoodSearchInput.test.jsx > FoodSearchInput Component > performs search on user input 25ms - ✓ src/components/__tests__/FoodSearchInput.test.jsx > FoodSearchInput Component > displays search results 11ms - ✓ src/components/__tests__/FoodSearchInput.test.jsx > FoodSearchInput Component > calls onSelect when food item is clicked 19ms - ✓ src/components/__tests__/FoodSearchInput.test.jsx > FoodSearchInput Component > handles search errors gracefully 25ms - ✓ src/components/__tests__/FoodSearchInput.test.jsx > FoodSearchInput Component > clears results when input is empty 11ms - ✓ src/components/__tests__/FoodSearchInput.test.jsx > FoodSearchInput Component > has quantity input field 11ms - ✓ src/components/__tests__/FoodSearchInput.test.jsx > FoodSearchInput Component > allows changing quantity 12ms - ✓ src/components/__tests__/FoodSearchInput.test.jsx > FoodSearchInput Component > defaults quantity to 1 10ms - ✓ src/components/__tests__/FoodSearchInput.test.jsx > FoodSearchInput Component > accepts decimal quantities 12ms - ✓ src/components/__tests__/FoodSearchInput.test.jsx > FoodSearchInput Component > accepts initialValue prop 7ms - ✓ src/components/charts/__tests__/MacroBreakdownChart.test.jsx > MacroBreakdownChart > renders chart with valid data 122ms - ✓ src/components/charts/__tests__/MacroBreakdownChart.test.jsx > MacroBreakdownChart > shows empty state when no data 18ms - ✓ src/components/charts/__tests__/MacroBreakdownChart.test.jsx > MacroBreakdownChart > shows empty state when all values are zero 9ms - ✓ src/components/charts/__tests__/MacroBreakdownChart.test.jsx > MacroBreakdownChart > filters out zero values from chart 8ms - ✓ src/components/charts/__tests__/MacroBreakdownChart.test.jsx > MacroBreakdownChart > renders with legend by default 19ms - ✓ src/components/charts/__tests__/MacroBreakdownChart.test.jsx > MacroBreakdownChart > can hide legend when showLegend is false 7ms - ✓ src/components/charts/__tests__/MacroBreakdownChart.test.jsx > MacroBreakdownChart > handles missing macro values gracefully 5ms - ✓ src/components/charts/__tests__/MacroBreakdownChart.test.jsx > MacroBreakdownChart > rounds decimal values to one decimal place 11ms - ✓ src/components/__tests__/ChartErrorBoundary.test.jsx > ChartErrorBoundary > renders children when there is no error 67ms - ✓ src/components/__tests__/ChartErrorBoundary.test.jsx > ChartErrorBoundary > renders error message when child component throws 42ms - ✓ src/components/__tests__/ChartErrorBoundary.test.jsx > ChartErrorBoundary > displays error icon when error occurs 17ms - ✓ src/components/__tests__/ChartErrorBoundary.test.jsx > ChartErrorBoundary > prevents error from propagating to parent 13ms - ✓ src/pages/__tests__/Dashboard.test.jsx > Dashboard Page > renders dashboard components 138ms - ✓ src/pages/__tests__/Dashboard.test.jsx > Dashboard Page > displays date selector 18ms - ✓ src/pages/__tests__/Dashboard.test.jsx > Dashboard Page > shows reminders card 11ms - ✓ src/pages/__tests__/Dashboard.test.jsx > Dashboard Page > renders chart components 9ms - ✓ src/pages/__tests__/Dashboard.test.jsx > Dashboard Page > displays sidebar navigation 23ms - ✓ src/pages/__tests__/Dashboard.test.jsx > Dashboard Page > handles component mounting without errors 13ms - ✓ src/pages/__tests__/Dashboard.test.jsx > Dashboard Page > renders page container 17ms - ✓ src/components/fasting/__tests__/FastingToggle.test.jsx > FastingToggle > renders "Start Fasting" button initially 3ms - ✓ src/components/fasting/__tests__/FastingToggle.test.jsx > FastingToggle > shows timer and "End Fast" when fasting is active 1ms - ✓ src/components/fasting/__tests__/FastingToggle.test.jsx > FastingToggle > displays progress correctly 0ms - ✓ src/pages/__tests__/Logging.test.jsx > Logging Page > renders logging page 102ms - ✓ src/pages/__tests__/Logging.test.jsx > Logging Page > shows meal form 16ms - ✓ src/pages/__tests__/Logging.test.jsx > Logging Page > displays sidebar navigation 23ms - ✓ src/pages/__tests__/Logging.test.jsx > Logging Page > renders page container 27ms - ✓ src/pages/__tests__/Logging.test.jsx > Logging Page > handles component mounting without errors 10ms - ✓ src/contexts/__tests__/FastingContext.test.jsx > FastingContext Full > fasting timer functionality works in browser 5ms - ✓ src/contexts/__tests__/FastingContext.test.jsx > FastingContext Full > starts a new fast correctly 3ms - ✓ src/contexts/__tests__/FastingContext.test.jsx > FastingContext Full > loads active session on mount 3ms - ✓ src/contexts/__tests__/GoalsContext.test.jsx > GoalsContext > provides default goals when no user data exists 26ms - ✓ src/contexts/__tests__/GoalsContext.test.jsx > GoalsContext > loads existing user goals 1ms - ✓ src/contexts/__tests__/GoalsContext.test.jsx > GoalsContext > handles loading state correctly 9ms - ✓ src/components/dashboard/__tests__/RemindersCard.test.jsx > RemindersCard > shows hydration reminder during fast 2ms - ✓ src/components/dashboard/__tests__/RemindersCard.test.jsx > RemindersCard > shows fasting goal met reminder when time is up 1ms - - Test Files  16 passed (16) - Tests  142 passed (142) - Errors  1 error - Start at  04:23:01 - Duration  17.43s (transform 7.28s, setup 12.22s, import 13.03s, tests 25.18s, environment 44.99s) - diff --git a/frontend/test_results.txt b/frontend/test_results.txt deleted file mode 100644 index e1beff8..0000000 --- a/frontend/test_results.txt +++ /dev/null @@ -1,200 +0,0 @@ - -> nutrisync-frontend@0.0.0 test:run -> vitest run --reporter=verbose --coverage - - - RUN  v4.0.16 C:/Users/User/nutrisync/nutrisync/frontend - Coverage enabled with v8 - - ✓ src/pages/__tests__/Register.test.jsx > Register > renders registration form 195ms - ✓ src/pages/__tests__/Register.test.jsx > Register > displays email input field 53ms - ✓ src/pages/__tests__/Register.test.jsx > Register > displays password input fields 74ms - ✓ src/components/__tests__/SetGoals.test.jsx > SetGoals Component > renders goals form with current values including fasting 149ms - ✓ src/components/__tests__/SetGoals.test.jsx > SetGoals Component > displays current goal values in inputs when editing including fasting 29ms - ✓ src/pages/__tests__/Profile.test.jsx > Profile Page > renders profile page after loading 229ms - ✓ src/components/__tests__/SetGoals.test.jsx > SetGoals Component > allows updating fasting schedule 168ms - ✓ src/components/__tests__/SetGoals.test.jsx > SetGoals Component > validates numeric input 62ms - ✓ src/components/__tests__/SetGoals.test.jsx > SetGoals Component > shows loading state 48ms - ✓ src/pages/__tests__/Profile.test.jsx > Profile Page > displays user email 196ms - ✓ src/components/__tests__/SetGoals.test.jsx > SetGoals Component > shows fasting indicator when fasting is enabled 49ms - ✓ src/components/__tests__/SetGoals.test.jsx > SetGoals Component > does not show fasting indicator when disabled 58ms - ✓ src/components/__tests__/SetGoals.test.jsx > SetGoals Component > displays protein, carbs, and fat in summary 31ms - ✓ src/components/__tests__/SetGoals.test.jsx > SetGoals Component > uses default values when goals are null 53ms - ✓ src/components/__tests__/MealForm.extended.test.jsx > MealForm - Comprehensive Tests > renders autocomplete mode by default 127ms - ✓ src/components/__tests__/MealForm.extended.test.jsx > MealForm - Comprehensive Tests > allows selecting meal type 845ms - ✓ src/components/__tests__/MealForm.extended.test.jsx > MealForm - Comprehensive Tests > adds food through search 81ms - ✓ src/pages/__tests__/Login.test.jsx > Login Page > renders login form 1273ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > renders meal form with all required fields 1092ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > handles manual meal entry 25ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > validates required fields 18ms - ✓ src/pages/__tests__/Register.test.jsx > Register > shows password requirements 101ms - ✓ src/pages/__tests__/Login.test.jsx > Login Page > displays login button 400ms - ✓ src/pages/__tests__/Register.test.jsx > Register > validates password strength 1278ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > calculates total nutrition correctly 323ms - ✓ src/pages/__tests__/Register.test.jsx > Register > checks password match confirmation 224ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > handles food search integration 460ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > allows editing existing meal 59ms - ✓ src/pages/__tests__/Register.test.jsx > Register > validates email format 199ms - ✓ src/pages/__tests__/Register.test.jsx > Register > displays Google sign-up button 56ms - ✓ src/components/__tests__/MealForm.extended.test.jsx > MealForm - Comprehensive Tests > shows manual entry mode toggle 430ms - ✓ src/components/__tests__/MealForm.extended.test.jsx > MealForm - Comprehensive Tests > allows switching to manual mode 940ms - ✓ src/components/__tests__/MealForm.extended.test.jsx > MealForm - Comprehensive Tests > calculates total nutrition from added foods 69ms - ✓ src/pages/__tests__/Landing.test.jsx > Landing Page > renders main heading 2357ms - ✓ src/pages/__tests__/Profile.test.jsx > Profile Page > loads user profile data 128ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > handles meal type selection 244ms - ✓ src/pages/__tests__/Profile.test.jsx > Profile Page > shows dietary tab with restrictions 1915ms - ✓ src/pages/__tests__/Login.test.jsx > Login Page > accepts email and password input 238ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > handles form submission 397ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > handles cancel action 287ms - ✓ src/pages/__tests__/Register.test.jsx > Register > shows link to login page 198ms - ✓ src/components/__tests__/MealForm.extended.test.jsx > MealForm - Comprehensive Tests > submits meal successfully 565ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > shows loading state during submission 92ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > displays error messages on failure 46ms - ✓ src/pages/__tests__/Login.test.jsx > Login Page > calls supabase signIn on form submission 1139ms - ✓ src/pages/__tests__/Login.test.jsx > Login Page > displays error message on failed login 532ms - ✓ src/pages/__tests__/Profile.test.jsx > Profile Page > handles password reset 835ms - ✓ src/pages/__tests__/Landing.test.jsx > Landing Page > displays call-to-action buttons 371ms - ✓ src/components/__tests__/MealForm.extended.test.jsx > MealForm - Comprehensive Tests > shows loading state during submission 279ms - ✓ src/pages/__tests__/Login.test.jsx > Login Page > includes link to registration page 127ms - ✓ src/pages/__tests__/Login.test.jsx > Login Page > includes forgot password link 46ms - ✓ src/pages/__tests__/Login.test.jsx > Login Page > validates email format 48ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > allows adding multiple food items 274ms - ✓ src/pages/__tests__/Register.test.jsx > Register > handles successful registration 867ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > handles portion size adjustments 376ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > validates nutrition values are non-negative 24ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > supports meal photo attachment 22ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > removes food items from list 1ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > updates serving sizes correctly 0ms - ✓ src/components/__tests__/MealForm.test.jsx > MealForm > handles duplicate food additions 18ms - ✓ src/components/__tests__/MealForm.extended.test.jsx > MealForm - Comprehensive Tests > allows removing added foods 347ms - ✓ src/components/__tests__/MealForm.extended.test.jsx > MealForm - Comprehensive Tests > allows adding notes to meal 399ms - ✓ src/components/__tests__/MealForm.extended.test.jsx > MealForm - Comprehensive Tests > displays meal nutrition summary 92ms - ✓ src/pages/__tests__/Register.test.jsx > Register > displays error on registration failure 636ms - ✓ src/pages/__tests__/Login.test.jsx > Login Page > handles Google OAuth login 120ms - ✓ src/pages/__tests__/Login.test.jsx > Login Page > displays OAuth error from localStorage on mount 82ms - ✓ src/components/__tests__/MealForm.extended.test.jsx > MealForm - Comprehensive Tests > validates required fields before submission 321ms - ✓ src/components/__tests__/MealForm.extended.test.jsx > MealForm - Comprehensive Tests > allows adjusting portion sizes 51ms - ✓ src/pages/__tests__/Landing.test.jsx > Landing Page > shows feature sections 1079ms - ✓ src/components/__tests__/MealForm.extended.test.jsx > MealForm - Comprehensive Tests > updates nutrition when portions change 105ms - ✓ src/pages/__tests__/Landing.test.jsx > Landing Page > includes navigation links 1005ms - ✓ src/pages/__tests__/Login.test.jsx > Login Page > toggles password visibility 711ms - ✓ src/pages/__tests__/Profile.test.jsx > Profile Page > shows password reset success message 895ms - ✓ src/pages/__tests__/Register.test.jsx > Register > shows loading state during registration 684ms - ✓ src/pages/__tests__/Landing.test.jsx > Landing Page > renders footer with privacy and terms links 220ms - ✓ src/pages/__tests__/Login.test.jsx > Login Page > handles remember me checkbox 440ms - ✓ src/pages/__tests__/Register.test.jsx > Register > disables submit button with invalid input 472ms - ✓ src/pages/__tests__/Register.test.jsx > Register > handles Google OAuth registration 59ms - ✓ src/pages/__tests__/Login.test.jsx > Login Page > shows loading state during login 420ms - ✓ src/pages/__tests__/Profile.test.jsx > Profile Page > handles password reset error 703ms - ✓ src/pages/__tests__/Register.test.jsx > Register > shows success message after email confirmation sent 406ms - ✓ src/pages/__tests__/Login.test.jsx > Login Page > handles Google OAuth error 116ms - ✓ src/pages/__tests__/Profile.test.jsx > Profile Page > opens delete account confirmation dialog 504ms - ✓ src/pages/__tests__/Login.test.jsx > Login Page > shows link to signup page when no account found 364ms - ✓ src/pages/__tests__/Profile.test.jsx > Profile Page > calculates and displays nutrition goals 539ms - ✓ src/pages/__tests__/Register.test.jsx > Register > prevents multiple submissions 380ms - ✓ src/pages/__tests__/Register.test.jsx > Register > detects existing user by empty identities array 533ms - ✓ src/pages/__tests__/Profile.test.jsx > Profile Page > displays BMI information 237ms - ✓ src/pages/__tests__/Register.test.jsx > Register > validates email format before submission 116ms - ✓ src/pages/__tests__/Register.test.jsx > Register > toggles password visibility 343ms - ✓ src/pages/__tests__/Register.test.jsx > Register > displays OAuth error from localStorage on mount 39ms - ✓ src/pages/__tests__/Register.test.jsx > Register > handles Google OAuth error 84ms - ✓ src/pages/__tests__/Profile.test.jsx > Profile Page > switches between profile and dietary tabs 432ms - ✓ src/pages/__tests__/Profile.test.jsx > Profile Page > saves profile updates 457ms - ✓ src/pages/__tests__/Profile.test.jsx > Profile Page > validates required fields before calculating goals 340ms - ✓ src/pages/__tests__/Profile.test.jsx > Profile Page > renders loading state initially 9ms - ✓ src/components/__tests__/ChartErrorBoundary.test.jsx > ChartErrorBoundary > renders children when there is no error 72ms - ✓ src/components/charts/__tests__/MacroBreakdownChart.test.jsx > MacroBreakdownChart > renders chart with valid data 126ms - ✓ src/components/charts/__tests__/MacroBreakdownChart.test.jsx > MacroBreakdownChart > shows empty state when no data 17ms - ✓ src/components/charts/__tests__/MacroBreakdownChart.test.jsx > MacroBreakdownChart > shows empty state when all values are zero 7ms - ✓ src/components/charts/__tests__/MacroBreakdownChart.test.jsx > MacroBreakdownChart > filters out zero values from chart 7ms - ✓ src/components/charts/__tests__/MacroBreakdownChart.test.jsx > MacroBreakdownChart > renders with legend by default 23ms - ✓ src/components/charts/__tests__/MacroBreakdownChart.test.jsx > MacroBreakdownChart > can hide legend when showLegend is false 7ms - ✓ src/components/charts/__tests__/MacroBreakdownChart.test.jsx > MacroBreakdownChart > handles missing macro values gracefully 7ms - ✓ src/components/charts/__tests__/MacroBreakdownChart.test.jsx > MacroBreakdownChart > rounds decimal values to one decimal place 11ms - ✓ src/components/__tests__/ChartErrorBoundary.test.jsx > ChartErrorBoundary > renders error message when child component throws 33ms - ✓ src/components/__tests__/ChartErrorBoundary.test.jsx > ChartErrorBoundary > displays error icon when error occurs 11ms - ✓ src/components/__tests__/ChartErrorBoundary.test.jsx > ChartErrorBoundary > prevents error from propagating to parent 15ms - ✓ src/components/__tests__/FoodSearchInput.test.jsx > FoodSearchInput Component > renders search input 144ms - ✓ src/components/__tests__/FoodSearchInput.test.jsx > FoodSearchInput Component > performs search on user input 24ms - ✓ src/components/__tests__/FoodSearchInput.test.jsx > FoodSearchInput Component > displays search results 10ms - ✓ src/components/__tests__/FoodSearchInput.test.jsx > FoodSearchInput Component > calls onSelect when food item is clicked 31ms - ✓ src/components/__tests__/FoodSearchInput.test.jsx > FoodSearchInput Component > handles search errors gracefully 27ms - ✓ src/components/__tests__/FoodSearchInput.test.jsx > FoodSearchInput Component > clears results when input is empty 15ms - ✓ src/components/__tests__/FoodSearchInput.test.jsx > FoodSearchInput Component > has quantity input field 51ms - ✓ src/components/__tests__/FoodSearchInput.test.jsx > FoodSearchInput Component > allows changing quantity 15ms - ✓ src/components/__tests__/FoodSearchInput.test.jsx > FoodSearchInput Component > defaults quantity to 1 8ms - ✓ src/components/__tests__/FoodSearchInput.test.jsx > FoodSearchInput Component > accepts decimal quantities 49ms - ✓ src/components/__tests__/FoodSearchInput.test.jsx > FoodSearchInput Component > accepts initialValue prop 37ms - ✓ src/pages/__tests__/Dashboard.test.jsx > Dashboard Page > renders dashboard components 288ms - ✓ src/pages/__tests__/Dashboard.test.jsx > Dashboard Page > displays date selector 44ms - ✓ src/pages/__tests__/Dashboard.test.jsx > Dashboard Page > shows reminders card 16ms - ✓ src/pages/__tests__/Dashboard.test.jsx > Dashboard Page > renders chart components 46ms - ✓ src/pages/__tests__/Dashboard.test.jsx > Dashboard Page > displays sidebar navigation 97ms - ✓ src/pages/__tests__/Dashboard.test.jsx > Dashboard Page > handles component mounting without errors 62ms - ✓ src/pages/__tests__/Dashboard.test.jsx > Dashboard Page > renders page container 45ms - ✓ src/components/dashboard/__tests__/RemindersCard.test.jsx > RemindersCard > shows hydration reminder during fast 3ms - ✓ src/components/dashboard/__tests__/RemindersCard.test.jsx > RemindersCard > shows fasting goal met reminder when time is up 0ms - ✓ src/components/fasting/__tests__/FastingToggle.test.jsx > FastingToggle > renders "Start Fasting" button initially 3ms - ✓ src/components/fasting/__tests__/FastingToggle.test.jsx > FastingToggle > shows timer and "End Fast" when fasting is active 0ms - ✓ src/components/fasting/__tests__/FastingToggle.test.jsx > FastingToggle > displays progress correctly 1ms - ✓ src/pages/__tests__/Logging.test.jsx > Logging Page > renders logging page 96ms - ✓ src/pages/__tests__/Logging.test.jsx > Logging Page > shows meal form 7ms - ✓ src/pages/__tests__/Logging.test.jsx > Logging Page > displays sidebar navigation 13ms - ✓ src/pages/__tests__/Logging.test.jsx > Logging Page > renders page container 22ms - ✓ src/pages/__tests__/Logging.test.jsx > Logging Page > handles component mounting without errors 11ms - ✓ src/contexts/__tests__/GoalsContext.test.jsx > GoalsContext > provides default goals when no user data exists 4ms - ✓ src/contexts/__tests__/GoalsContext.test.jsx > GoalsContext > loads existing user goals 0ms - ✓ src/contexts/__tests__/GoalsContext.test.jsx > GoalsContext > handles loading state correctly 0ms - ✓ src/contexts/__tests__/FastingContext.test.jsx > FastingContext Full > fasting timer functionality works in browser 4ms - ✓ src/contexts/__tests__/FastingContext.test.jsx > FastingContext Full > starts a new fast correctly 1ms - ✓ src/contexts/__tests__/FastingContext.test.jsx > FastingContext Full > loads active session on mount 0ms -⎯⎯⎯⎯⎯⎯ Unhandled Errors ⎯⎯⎯⎯⎯⎯ - -Vitest caught 1 unhandled error during the test run. -This might cause false positive tests. Resolve unhandled errors to make sure your tests are not affected. - -⎯⎯⎯⎯ Unhandled Rejection ⎯⎯⎯⎯⎯ -TypeError: __vite_ssr_import_2__.supabase.from(...).select is not a function - ❯ fetchDietaryRestrictions src/components/MealForm.jsx:74:10 -  72|  const { data } = await supabase -  73|  .from('user_profile') -  74|  .select('dietary_restrictions') -  |  ^ -  75|  .eq('user_id', user.id) -  76|  .single(); - ❯ runNextTicks node:internal/process/task_queues:65:5 - ❯ processTimers node:internal/timers:526:9 - -This error originated in "src/components/__tests__/MealForm.test.jsx" test file. It doesn't mean the error was thrown inside the file itself, but while it was running. -The latest test that might've caused the error is "displays error messages on failure". It might mean one of the following: -- The error was thrown, while Vitest was running this test. -- If the error occurred after the test had been completed, this was the last documented test before it was thrown. -⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ - - - Test Files  16 passed (16) - Tests  142 passed (142) - Errors  1 error - Start at  05:15:50 - Duration  29.12s (transform 14.05s, setup 25.13s, import 20.21s, tests 36.18s, environment 81.61s) - - % Coverage report from v8 --------------------|---------|----------|---------|---------|------------------- -File | % Stmts | % Branch | % Funcs | % Lines | Uncovered Line #s --------------------|---------|----------|---------|---------|------------------- -All files | 52.95 | 50 | 34.92 | 55.49 | - components | 42.8 | 38.97 | 31.57 | 43.75 | - ...rBoundary.jsx | 100 | 100 | 100 | 100 | - ...archInput.jsx | 37.87 | 16.27 | 38.88 | 38.98 | ...97-111,132-223 - MealForm.jsx | 43.42 | 36.36 | 31.42 | 44.44 | ...70-429,458-568 - SetGoals.jsx | 37.5 | 50 | 10.52 | 36.66 | ...9,72-73,85-286 - components/charts | 72.72 | 90.9 | 40 | 72.72 | - ...downChart.jsx | 72.72 | 90.9 | 40 | 72.72 | 25-37,69 - pages | 57.64 | 55.55 | 36.71 | 61.11 | - Dashboard.jsx | 87.87 | 59.52 | 62.5 | 96.66 | 71 - Landing.jsx | 100 | 100 | 100 | 100 | - Logging.jsx | 33.84 | 25.8 | 11.32 | 37.83 | ...44-146,186-494 - Login.jsx | 86.95 | 95 | 100 | 86.95 | 29-30,53,82-84 - Profile.jsx | 52.23 | 51.48 | 30.23 | 54.41 | ...88,624,686-768 - Register.jsx | 80.59 | 88.46 | 90.9 | 80.59 | ...85,115-117,289 --------------------|---------|----------|---------|---------|-------------------