Files
8c8e959b49 feat!: adopt the global Fetch API (#1436)
Co-authored-by: Frederik Rabøl <[email protected]>
Co-authored-by: Christoph Fricke <[email protected]>
Co-authored-by: Piotr <[email protected]>
Co-authored-by: Kristján Oddsson <[email protected]>
Co-authored-by: thepassle <[email protected]>
Co-authored-by: Kevin Østerkilde <[email protected]>
Co-authored-by: Laryssa Rocha <[email protected]>
Co-authored-by: Matthew Costabile <[email protected]>
2023-10-23 09:45:04 +02:00

52 lines
1020 B
TypeScript

import { http, HttpResponse } from 'msw'
import { setupWorker } from 'msw/browser'
const worker = setupWorker(
http.get<{ maxCount: string }>('/polling/:maxCount', function* ({ params }) {
const { maxCount } = params
let count = 0
while (count < Number(maxCount)) {
count += 1
yield HttpResponse.json({
status: 'pending',
count,
})
}
return HttpResponse.json({
status: 'complete',
count,
})
}),
http.get<{ maxCount: string }>(
'/polling/once/:maxCount',
function* ({ params }) {
const { maxCount } = params
let count = 0
while (count < Number(maxCount)) {
count += 1
yield HttpResponse.json({
status: 'pending',
count,
})
}
return HttpResponse.json({
status: 'complete',
count,
})
},
{ once: true },
),
http.get('/polling/once/:maxCount', () => {
return HttpResponse.json({ status: 'done' })
}),
)
worker.start()