【发布时间】:2012-11-14 10:18:34
【问题描述】:
我正在尝试编写一个测试来检查 API 路由是否输出具有正确内容的 ZIP 文件。
我正在使用 mocha 和 supertest 进行测试,我想实际读取输出流/缓冲区,读取 zip 文件内容并查看内容是否正确。
任何想法我应该怎么做?当我尝试阅读 res.body 时,它只是一个空对象。
request(app)
.get( "/api/v1/orders/download?id[]=1&id=2" )
.set( "Authorization", authData )
.expect( 200 )
.expect( 'Content-Type', /application\/zip/ )
.end( function (err, res) {
if (err) return done( err );
console.log( 'body:', res.body )
// Write the temp HTML file to filesystem using utf-8 encoding
var zip = new AdmZip( res.body );
var zipEntries = zip.getEntries();
console.log( 'zipentries:', zipEntries );
zipEntries.forEach(function(zipEntry) {
console.log(zipEntry.toString()); // outputs zip entries information
});
done();
});
【问题讨论】:
标签: node.js zip mocha.js superagent supertest