UNPKG

@whatwg-node/fetch

Version:

Cross Platform Smart Fetch Ponyfill

37 lines (35 loc) 1.64 kB
import { createTestContainer } from '../../server/test/create-test-container'; describe('getFormDataMethod', () => { createTestContainer(fetchAPI => { it('should parse fields correctly', async () => { const formData = new fetchAPI.FormData(); formData.append('greetings', 'Hello world!'); formData.append('bye', 'Goodbye world!'); const request = new fetchAPI.Request('http://localhost:8080', { method: 'POST', body: formData, }); const formdata = await request.formData(); expect(formdata.get('greetings')).toBe('Hello world!'); expect(formdata.get('bye')).toBe('Goodbye world!'); }); it('should parse and receive text files correctly', async () => { const formData = new fetchAPI.FormData(); const greetingsFile = new fetchAPI.File(['Hello world!'], 'greetings.txt', { type: 'text/plain' }); const byeFile = new fetchAPI.File(['Goodbye world!'], 'bye.txt', { type: 'text/plain' }); formData.append('greetings', greetingsFile); formData.append('bye', byeFile); const request = new fetchAPI.Request('http://localhost:8080', { method: 'POST', body: formData, }); const formdata = await request.formData(); const receivedGreetingsFile = formdata.get('greetings') as File; const receivedGreetingsText = await receivedGreetingsFile.text(); expect(receivedGreetingsText).toBe('Hello world!'); const receivedByeFile = formdata.get('bye') as File; const receivedByeText = await receivedByeFile.text(); expect(receivedByeText).toBe('Goodbye world!'); }); }); });