DataApiEnableSwitch.utils.test.ts41 lines · main
1import { describe, expect, it } from 'vitest'
2
3import { getDefaultSchemas } from './DataApiEnableSwitch.utils'
4
5describe('getDefaultSchemas', () => {
6 it('returns ["public"] for undefined', () => {
7 expect(getDefaultSchemas(undefined)).toEqual(['public'])
8 })
9
10 it('returns ["public"] for null', () => {
11 expect(getDefaultSchemas(null)).toEqual(['public'])
12 })
13
14 it('returns ["public"] for empty string', () => {
15 expect(getDefaultSchemas('')).toEqual(['public'])
16 })
17
18 it('returns ["public"] for whitespace-only string', () => {
19 expect(getDefaultSchemas(' , , ')).toEqual(['public'])
20 })
21
22 it('parses a single schema', () => {
23 expect(getDefaultSchemas('api')).toEqual(['api'])
24 })
25
26 it('parses multiple comma-separated schemas', () => {
27 expect(getDefaultSchemas('public, storage, graphql_public')).toEqual([
28 'public',
29 'storage',
30 'graphql_public',
31 ])
32 })
33
34 it('trims whitespace from schemas', () => {
35 expect(getDefaultSchemas(' public , storage ')).toEqual(['public', 'storage'])
36 })
37
38 it('filters out empty segments', () => {
39 expect(getDefaultSchemas('public,,storage,')).toEqual(['public', 'storage'])
40 })
41})