ruvector/studio/lib/api/edgeFunctions.test.ts
rUv 814f595995 feat(studio): Add complete RuVector Studio application
Major additions:
- Complete Next.js studio application with 1600+ components
- Docker support (Dockerfile.combined, docker-compose.yml)
- GCP deployment documentation and benchmarks
- SQL benchmark scripts for performance testing
- Sentry integration for monitoring
- Comprehensive test suite and mocks

Studio features:
- Dashboard and admin interfaces
- Data visualization components
- Authentication and user management
- API integration with RuVector backend
- Static data and public assets

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-06 23:04:48 +00:00

31 lines
1.2 KiB
TypeScript

import { expect, describe, it } from 'vitest'
import { isValidEdgeFunctionURL } from './edgeFunctions'
describe('isValidEdgeFunctionURL', () => {
const validEdgeFunctionUrls = [
'https://projectref.supabase.co/functions/v1/hello-world',
'https://projectref.supabase.red/functions/v1/hello-world',
'https://projectref.supabase.red/functions/v3/hello-world',
'https://projectref.supabase.red/functions/v3/hello-world',
]
const invalidEdgeFunctionUrls = [
'https://notsupabase.com/functions/v1/test',
'https://projectref.notsupabase.com/functions/v1/test',
'https://localhost?https://aaaa.supabase.co/functions/v1/xxx',
'https://localhost:3000/?https://aaaa.supabase.co/functions/v1/xxx',
'http://localhost:3000/?https://aaaa.supabase.co/functions/v1/xxx',
]
it('should match valid edge function URLs', () => {
for (const url of validEdgeFunctionUrls) {
expect(isValidEdgeFunctionURL(url), `Expected ${url} to be valid`).toBe(true)
}
})
it('should not match invalid edge function URLs', () => {
for (const url of invalidEdgeFunctionUrls) {
expect(isValidEdgeFunctionURL(url), `Expected ${url} to be invalid`).toBe(false)
}
})
})