UNPKG

ks3

Version:

本代码库为`金山云存储KS3`服务.主要提供`KS3 nodejs SDK`和`命令行工具`.

102 lines (86 loc) 2.1 kB
var KS3 = require('..'); var should = require('should'); require('should-http'); var path = require('path'); var fs = require('fs'); var { ak, sk, bucketName, endpoint} = require('./config') describe('download module', function() { var client = null var key = 'word.txt' // 6813 var filePath = path.join(__dirname, './assets/'+key); var downFilePath = path.join(__dirname, './assets/test_download_'+key); client = new KS3({ ak, sk, bucketName, endpoint }); before(function () { console.log('start before func ...') return new Promise((resolve, reject) => { // upload a file client.object.put({ filePath: filePath, Key: key }, function(err, data, res, body) { if (err) { console.log('download module before error: ', err) reject(err) } else { resolve('') console.log('upload test file success') } }); }) }) describe('download', function () { this.timeout(17500) var upFileStat = fs.statSync(filePath); let error = '' before (function () { return new Promise((resolve, reject) => { client.download.start({ Bucket: bucketName, Key: key, filePath: downFilePath, chunk:31 }, function(err, data) { if (err) { error = err reject(err) } resolve() }); }) }) it('should download a file', function(done) { var downFileStat = fs.statSync(downFilePath); (downFileStat.size).should.equal(upFileStat.size); should.equal(error, ''); done() }); it('should download a no exist file', function(done) { var key = 'file_no_exist.jpg'; client.download.start({ Key: key, filePath: path.join(__dirname, './assets/test_download_'+key) },function(err,data,res){ should.exist(err); err.should.have.property('statusCode', 404); done() }); }) }) after(function (done) { // delete local file fs.existsSync(downFilePath) && fs.unlinkSync(downFilePath) client.object.del({ Key: key }, function (err, data, res) { if (err) { done(err) } should.not.exist(err) done() }) }) });