Files
smoothschedule/frontend/test-production.spec.ts
poduck 4cd6610f2a Fix double /api/ prefix in API endpoint calls
When VITE_API_URL=/api, axios baseURL is already set to /api. However, all endpoint calls included the /api/ prefix, creating double paths like /api/api/auth/login/.

Removed /api/ prefix from 81 API endpoint calls across 22 files:
- src/api/auth.ts - Fixed login, logout, me, refresh, hijack endpoints
- src/api/client.ts - Fixed token refresh endpoint
- src/api/profile.ts - Fixed all profile, email, password, MFA, sessions endpoints
- src/hooks/*.ts - Fixed all remaining API calls (users, appointments, resources, etc)
- src/pages/*.tsx - Fixed signup and email verification endpoints

This ensures API requests use the correct path: /api/auth/login/ instead of /api/api/auth/login/

🤖 Generated with Claude Code

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-30 15:27:57 -05:00

44 lines
1.7 KiB
TypeScript
Raw Permalink Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
import { test, expect } from '@playwright/test';
test('production login redirects to correct domain', async ({ page }) => {
console.log('\n=== Testing Production Login Flow ===\n');
// Step 1: Navigate to login
console.log('Step 1: Navigating to https://smoothschedule.com/login');
await page.goto('https://smoothschedule.com/login');
await page.waitForLoadState('networkidle');
console.log(' Current URL:', page.url());
// Step 2: Fill credentials
console.log('\nStep 2: Filling credentials (poduck@gmail.com / starry)');
await page.fill('input[name="username"]', 'poduck@gmail.com');
await page.fill('input[name="password"]', 'starry');
// Step 3: Click login
console.log('\nStep 3: Clicking login button');
await page.click('button[type="submit"]');
// Wait for navigation
await page.waitForTimeout(3000);
const finalUrl = page.url();
console.log(' URL after login:', finalUrl);
// Check if we're on the correct domain
if (finalUrl.includes('platform.smoothschedule.com')) {
console.log('\n✅ SUCCESS! Redirected to platform.smoothschedule.com');
} else if (finalUrl.includes('platform.lvh.me')) {
console.log('\n❌ FAILED! Redirected to platform.lvh.me (wrong domain)');
throw new Error('Redirect went to lvh.me instead of smoothschedule.com');
} else if (finalUrl.includes('smoothschedule.com/login')) {
console.log('\n⚠ Still on login page - may indicate login failure');
throw new Error('Still on login page after submitting credentials');
} else {
console.log('\n⚠ Unexpected URL:', finalUrl);
}
// Verify we're actually on platform.smoothschedule.com
expect(finalUrl).toContain('platform.smoothschedule.com');
console.log('\n✅ Test PASSED!');
});