mirror of
https://github.com/supabase/supabase.git
synced 2026-10-13 13:19:09 +03:00
* Fix tests in tests/unit, tests/components and files under tests, looking into tests/pages * Fix tests under pages/projects root * Fix * Comment out broken tests that im stuck with * Fix api-report.test * Fix storage-report-test * chore: fix some tests * chore: remove logging * Fix LogsPreviewer.test.js * Fix most of logs-query-test * Skip broken tests instead of false positiving them * Replace jest with vitest * Rename all *.test.js to *.test.ts * Configure vitest to work with jsx * fix vitest issues, fix tests, skip broken tests, add msw, add next-router-mock * uncomment file * add tests for msw and nrm * Fix failing tests * fix tests in RowEditor * fix datepicker tests * fix type errors and comment out tests that need some refactoring * leave 1 test so test script works * rm clog and aaaaa * rename script * move msw to studio * add pckg json which i forgot in last commit * rm consolelog * move vitest ui dep * Move next-router-mock to studio. --------- Co-authored-by: Joshen Lim <joshenlimek@gmail.com> Co-authored-by: TzeYiing <ty@tzeyiing.com> Co-authored-by: Kamil Ogórek <kamil.ogorek@gmail.com> Co-authored-by: Terry Sutton <saltcod@gmail.com> Co-authored-by: Ivan Vasilov <vasilov.ivan@gmail.com>
88 lines
2.9 KiB
TypeScript
88 lines
2.9 KiB
TypeScript
import { urlRegex } from 'components/interfaces/Auth/Auth.constants'
|
|
|
|
describe('Auth.constants: domainRegex', () => {
|
|
test('should validate typical URLs', () => {
|
|
const mockInput1 = 'http://domain.com'
|
|
const output1 = urlRegex.test(mockInput1)
|
|
expect(output1).toBe(true)
|
|
|
|
const mockInput2 = 'https://supabase.io'
|
|
const output2 = urlRegex.test(mockInput2)
|
|
expect(output2).toBe(true)
|
|
|
|
const mockInput3 = 'https://new-domain-vercel.com'
|
|
const output3 = urlRegex.test(mockInput3)
|
|
expect(output3).toBe(true)
|
|
|
|
const mockInput4 = 'www.test-domain.com'
|
|
const output4 = urlRegex.test(mockInput4)
|
|
expect(output4).toBe(true)
|
|
})
|
|
test('should validate app-based domains', () => {
|
|
const mockInput1 = 'exp://exp.host/some-app'
|
|
const output1 = urlRegex.test(mockInput1)
|
|
expect(output1).toBe(true)
|
|
|
|
const mockInput2 = 'exp://exp.host/some-app?release-channel=default'
|
|
const output2 = urlRegex.test(mockInput2)
|
|
expect(output2).toBe(true)
|
|
})
|
|
test('should validate subdomains', () => {
|
|
const mockInput1 = 'https://supabase.com/dashboard'
|
|
const output1 = urlRegex.test(mockInput1)
|
|
expect(output1).toBe(true)
|
|
})
|
|
test('should validate localhost URLs', () => {
|
|
const mockInput1 = 'http://localhost:3000'
|
|
const output1 = urlRegex.test(mockInput1)
|
|
expect(output1).toBe(true)
|
|
})
|
|
test('should validate URLs with query params', () => {
|
|
const mockInput1 = 'https://supabase.com?name=test'
|
|
const output1 = urlRegex.test(mockInput1)
|
|
expect(output1).toBe(true)
|
|
|
|
const mockInput2 = 'https://supabase.com?name=test&description=hello&page=2'
|
|
const output2 = urlRegex.test(mockInput2)
|
|
expect(output2).toBe(true)
|
|
})
|
|
test('should validate URLs with wildcards', () => {
|
|
const mockInput1 = 'https://supabase*.com'
|
|
const output1 = urlRegex.test(mockInput1)
|
|
expect(output1).toBe(true)
|
|
|
|
const mockInput2 = 'https://supabase.com/*'
|
|
const output2 = urlRegex.test(mockInput2)
|
|
expect(output2).toBe(true)
|
|
|
|
const mockInput3 = 'https://new-*-domain.com/*'
|
|
const output3 = urlRegex.test(mockInput3)
|
|
expect(output3).toBe(true)
|
|
|
|
const mockInput4 = 'https://new-*-domain.com/*/*/*'
|
|
const output4 = urlRegex.test(mockInput4)
|
|
expect(output4).toBe(true)
|
|
|
|
const mockInput5 = 'https://sub-*-domain.new-*-domain.com/*/*/*'
|
|
const output5 = urlRegex.test(mockInput5)
|
|
expect(output5).toBe(true)
|
|
})
|
|
test('should invalidate invalid URLs', () => {
|
|
const mockInput1 = 'supabase'
|
|
const output1 = urlRegex.test(mockInput1)
|
|
expect(output1).toBe(false)
|
|
|
|
const mockInput2 = 'mailto:test@gmail.com'
|
|
const output2 = urlRegex.test(mockInput2)
|
|
expect(output2).toBe(false)
|
|
|
|
const mockInput4 = 'hello world.com'
|
|
const output4 = urlRegex.test(mockInput4)
|
|
expect(output4).toBe(false)
|
|
|
|
const mockInput5 = 'email@domain.com'
|
|
const output5 = urlRegex.test(mockInput5)
|
|
expect(output5).toBe(false)
|
|
})
|
|
})
|