-
-
Notifications
You must be signed in to change notification settings - Fork 8k
Open
@pleymor
Description
Gist to test the content of an Excel File in a controller (e2e) test, with a lib like supertest:
function binaryParser(res, callback) { res.setEncoding('binary') res.data = '' res.on('data', function (chunk) { res.data += chunk }) res.on('end', function () { callback(null, new Buffer(res.data, 'binary')) }) } describe('exports/:id (GET)', () => { it('should return an excel File', async () => { const res = await request(app.getHttpServer()) .get('/exports/xxx') .expect('Content-Type', 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet; charset=utf-8') .buffer() .parse(binaryParser) assert.ok(Buffer.isBuffer(res.body)) const workbook = XLSX.read(res.body, { type: 'buffer' }) const sheet = workbook.Sheets[workbook.SheetNames[0]] const json = XLSX.utils.sheet_to_json(sheet, { header: 1 }) expect(json).toEqual([ ['My first Row', 'My second Row'], ['val 1', 50], ['val 2', 10] ]) }) })
Metadata
Metadata
Assignees
Labels
No labels