DataApiEnableSwitch.utils.test.ts 1.2 KB

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