Skip to content

Commit 751b266

Browse files
Merge pull request googleapis#151 from stephenplusplus/regression-fails
tests: storage: refactor + bump offset.
2 parents f919a6b + 3bec28d commit 751b266

1 file changed

Lines changed: 36 additions & 45 deletions

File tree

regression/storage.js

Lines changed: 36 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -40,13 +40,11 @@ var files = {
4040
};
4141

4242
function setHash(obj, file, done) {
43-
var md5sum = crypto.createHash('md5');
43+
var hash = crypto.createHash('md5');
4444
fs.createReadStream(obj[file].path)
45-
.on('data', function(d) {
46-
md5sum.update(d);
47-
})
45+
.on('data', hash.update.bind(hash))
4846
.on('end', function() {
49-
obj[file].hash = md5sum.digest('base64');
47+
obj[file].hash = hash.digest('base64');
5048
done();
5149
});
5250
}
@@ -57,7 +55,7 @@ describe('storage', function() {
5755
var doneCalled = 0;
5856
Object.keys(files).forEach(function(file) {
5957
setHash(files, file, function() {
60-
if (++doneCalled === 2) {
58+
if (++doneCalled === Object.keys(files).length) {
6159
done();
6260
}
6361
});
@@ -66,29 +64,27 @@ describe('storage', function() {
6664

6765
describe('stream write', function() {
6866
it('should stream write, then remove large file (5mb)', function(done) {
69-
var fileName = 'LargeFile';
70-
67+
var filename = 'LargeFile';
7168
fs.createReadStream(files.big.path)
72-
.pipe(bucket.createWriteStream(fileName))
69+
.pipe(bucket.createWriteStream(filename))
7370
.on('error', done)
7471
.on('complete', function(fileObject) {
7572
assert.equal(fileObject.md5Hash, files.big.hash);
76-
bucket.remove(fileName, done);
73+
bucket.remove(filename, done);
7774
});
7875
});
7976

8077
it('should write and read metadata', function(done) {
81-
var fileName = 'CloudLogo';
78+
var filename = 'CloudLogo';
8279
var myMetadata = { contentType: 'image/png' };
83-
8480
fs.createReadStream(files.logo.path)
85-
.pipe(bucket.createWriteStream(fileName, myMetadata))
81+
.pipe(bucket.createWriteStream(filename, myMetadata))
8682
.on('error', done)
8783
.on('complete', function() {
88-
bucket.stat(fileName, function(err, metadata) {
84+
bucket.stat(filename, function(err, metadata) {
8985
assert.ifError(err);
9086
assert.equal(metadata.contentType, myMetadata.contentType);
91-
bucket.remove(fileName, function(err) {
87+
bucket.remove(filename, function(err) {
9288
assert.ifError(err);
9389
done();
9490
});
@@ -97,19 +93,19 @@ describe('storage', function() {
9793
});
9894

9995
it('should write/read/remove from a buffer', function(done) {
100-
var fileName = 'MyBuffer';
96+
var filename = 'MyBuffer';
10197
var fileContent = 'Hello World';
10298
tmp.setGracefulCleanup();
10399
tmp.file(function _tempFileCreated(err, path) {
104100
assert.ifError(err);
105-
bucket.write(fileName, fileContent, function(err, fileObject) {
101+
bucket.write(filename, fileContent, function(err, fileObject) {
106102
assert.ifError(err);
107103
assert(fileObject);
108-
bucket.createReadStream(fileName)
104+
bucket.createReadStream(filename)
109105
.pipe(fs.createWriteStream(path))
110106
.on('error', done)
111107
.on('finish', function() {
112-
bucket.remove(fileName, function(err) {
108+
bucket.remove(filename, function(err) {
113109
assert.ifError(err);
114110
fs.readFile(path, function(err, data) {
115111
assert.equal(data, fileContent);
@@ -123,17 +119,16 @@ describe('storage', function() {
123119
});
124120

125121
it('should copy an existing file', function(done) {
126-
var fileName = 'CloudLogo';
122+
var filename = 'CloudLogo';
127123
var copyName = 'CloudLogoCopy';
128-
129124
fs.createReadStream(files.logo.path)
130-
.pipe(bucket.createWriteStream(fileName))
125+
.pipe(bucket.createWriteStream(filename))
131126
.on('error', done)
132127
.on('complete', function() {
133-
bucket.copy(fileName, { name: copyName }, function(err) {
128+
bucket.copy(filename, { name: copyName }, function(err) {
134129
assert.ifError(err);
135130
async.parallel([
136-
bucket.remove.bind(bucket, fileName),
131+
bucket.remove.bind(bucket, filename),
137132
bucket.remove.bind(bucket, copyName)
138133
], done);
139134
});
@@ -151,10 +146,7 @@ describe('storage', function() {
151146
.on('complete', function() {
152147
bucket.copy(filenames[0], { name: filenames[1] }, function(err) {
153148
assert.ifError(err);
154-
bucket.copy(filenames[0], { name: filenames[2] }, function(err) {
155-
assert.ifError(err);
156-
done();
157-
});
149+
bucket.copy(filenames[0], { name: filenames[2] }, done);
158150
});
159151
});
160152
});
@@ -192,11 +184,11 @@ describe('storage', function() {
192184
});
193185

194186
describe('sign urls', function() {
195-
var fileName = 'LogoToSign.jpg';
187+
var filename = 'LogoToSign.jpg';
196188

197189
beforeEach(function(done) {
198190
fs.createReadStream(files.logo.path)
199-
.pipe(bucket.createWriteStream(fileName))
191+
.pipe(bucket.createWriteStream(filename))
200192
.on('error', done)
201193
.on('complete', done.bind(null, null));
202194
});
@@ -205,47 +197,46 @@ describe('storage', function() {
205197
var signedReadUrl = bucket.getSignedUrl({
206198
action: 'read',
207199
expires: Math.round(Date.now() / 1000) + 5,
208-
resource: fileName
200+
resource: filename
209201
});
210202
var localFile = fs.readFileSync(files.logo.path);
211203
request.get(signedReadUrl, function(err, resp, body) {
212204
assert.equal(body, localFile);
213-
bucket.remove(fileName, done);
205+
bucket.remove(filename, done);
214206
});
215207
});
216208

217209
it('should create a signed delete url', function(done) {
218210
var signedDeleteUrl = bucket.getSignedUrl({
219211
action: 'delete',
220212
expires: Math.round(Date.now() / 1000) + 5,
221-
resource: fileName
213+
resource: filename
222214
});
223215
request.del(signedDeleteUrl, function(err, resp) {
224216
assert.equal(resp.statusCode, 204);
225-
bucket.stat(fileName, function(err) {
217+
bucket.stat(filename, function(err) {
226218
assert.equal(err.code, 404);
227219
done();
228220
});
229221
});
230222
});
231223

232224
it('should allow control of expiration', function(done) {
233-
var offsetSeconds = 5;
225+
var OFFSET_SECONDS = 5;
234226
var signedReadUrl = bucket.getSignedUrl({
235227
action: 'read',
236-
expires: Math.round(Date.now() / 1000) + offsetSeconds,
237-
resource: fileName
228+
expires: Math.round(Date.now() / 1000) + OFFSET_SECONDS,
229+
resource: filename
238230
});
239-
var localFile = fs.readFileSync(files.logo.path);
240231
request.get(signedReadUrl, function(err, resp, body) {
241-
assert.equal(body, localFile);
232+
assert.equal(body, fs.readFileSync(files.logo.path));
233+
setTimeout(function() {
234+
request.get(signedReadUrl, function(err, resp) {
235+
assert.equal(resp.statusCode, 400);
236+
bucket.remove(filename, done);
237+
});
238+
}, (OFFSET_SECONDS + 5) * 1000);
242239
});
243-
setTimeout(function() {
244-
request.get(signedReadUrl, function(err, resp) {
245-
assert.equal(resp.statusCode, 400);
246-
bucket.remove(fileName, done);
247-
});
248-
}, (offsetSeconds + 1) * 1000);
249240
});
250241
});
251242
});

0 commit comments

Comments
 (0)