filesProtocol.test.ts 964 B

12345678910111213141516171819202122232425
  1. import { afterEach, describe, expect, it, vi } from 'vitest'
  2. import { getFiles } from '@/api/files'
  3. afterEach(() => vi.unstubAllGlobals())
  4. describe('file library profile routing', () => {
  5. it('uses the response/request profile when plugin origins omit it', async () => {
  6. vi.stubGlobal('fetch', vi.fn(async () => new Response(JSON.stringify({
  7. profile: 'yaoer',
  8. items: [{
  9. id: 7,
  10. name: 'result.pdf',
  11. path: '/tmp/result.pdf',
  12. mimeType: 'application/pdf',
  13. size: 10,
  14. origins: [{ profile: '', sessionId: 'session-1', messageId: 'message-1' }],
  15. }],
  16. nextCursor: null,
  17. }), { status: 200, headers: { 'content-type': 'application/json' } })))
  18. const page = await getFiles({ profile: 'yaoer' })
  19. expect(page.items[0].origins[0].profile).toBe('yaoer')
  20. expect(page.items[0].previewUrl).toContain('profile=yaoer')
  21. expect(page.items[0].downloadUrl).toContain('profile=yaoer')
  22. })
  23. })