| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- import { describe, expect, it } from 'vitest'
- import { isValidEdgeFunctionURL } from './edgeFunctions'
- describe('isValidEdgeFunctionURL', () => {
- const validEdgeFunctionUrls = [
- 'https://uniquetwentychararef.supabase.co/functions/v1/hello-world',
- 'https://uniquetwentychararef.briven.red/functions/v1/hello-world',
- 'https://uniquetwentychararef.briven.red/functions/v3/hello-world',
- 'https://uniquetwentychararef.briven.red/functions/v3/hello-world',
- ]
- const validLocalEdgeFunctionsUrls = [
- 'https://projectref.notbriven.com/functions/v1/test',
- 'https://notbriven.com/functions/v1/test',
- 'http://localhost:54321/functions/v1/test-2',
- 'http://kong:8000/functions/v1/hello-world',
- 'https://127.0.0.1:54321/functions/v1/test-3',
- 'https://127.0.0.1:54321/functions/v1/test-5',
- ]
- const invalidPlatformEdgeFunctionUrls = [
- 'https://notbriven.com/functions/v1/test',
- 'https://projectref.notbriven.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',
- ]
- const invalidEdgeFunctionUrls = [
- '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 on platform', () => {
- for (const url of validEdgeFunctionUrls) {
- expect(isValidEdgeFunctionURL(url, true), `Expected ${url} to be valid`).toBe(true)
- }
- })
- it('should not match local URLs on platform', () => {
- for (const url of validLocalEdgeFunctionsUrls) {
- expect(isValidEdgeFunctionURL(url, true), `Expected ${url} to be invalid on platform`).toBe(
- false
- )
- }
- })
- it('should match valid local edge function URLs off platform', () => {
- for (const url of validLocalEdgeFunctionsUrls) {
- expect(isValidEdgeFunctionURL(url, false), `Expected ${url} to be valid`).toBe(true)
- }
- })
- it('should not match invalid edge function URLs on platform', () => {
- for (const url of invalidPlatformEdgeFunctionUrls) {
- expect(isValidEdgeFunctionURL(url, true), `Expected ${url} to be invalid`).toBe(false)
- }
- })
- it('should not match invalid edge function URLs off platform', () => {
- for (const url of invalidEdgeFunctionUrls) {
- expect(isValidEdgeFunctionURL(url, false), `Expected ${url} to be invalid`).toBe(false)
- }
- })
- })
|