mswでモックする対象としてzip
や動画などバイナリファイルも扱える
次の例はGitHub Actionsの各ジョブのログをあらかじめDLしておきそれを読み込みレスポンスとして返す処理
- handlerの例
export const handlers = [
http.get('https://api.github.com/repos/*/*/actions/runs/*/logs', () => {
const buffer = fs.readFileSync(
path.resolve(process.cwd(), './src/mocks/responses/failed_log.zip')
)
return HttpResponse.arrayBuffer(buffer, {
status: 200,
headers: {
'Content-Type': 'application/zip'
}
})
})
]
公式の例ではmp4
をバイナリとして返している
基本的にはこの方法でバイナリファイルでもレスポンスをモックすることが可能
- 公式