Skip to content

Commit

Permalink
fix: getBucketVersions result has no prefixes (#799)
Browse files Browse the repository at this point in the history
  • Loading branch information
weiyie committed Jun 2, 2020
1 parent 49aa122 commit 390b449
Show file tree
Hide file tree
Showing 2 changed files with 22 additions and 1 deletion.
11 changes: 10 additions & 1 deletion lib/common/object/getBucketVersions.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
/* eslint-disable no-use-before-define */
const proto = exports;
const isObject = require('../utils/isObject');
const isArray = require('../utils/isArray');


proto.getBucketVersions = getBucketVersions;
Expand Down Expand Up @@ -47,7 +48,7 @@ async function getBucketVersions(query = {}, options = {}) {
}));
}
if (deleteMarker) {
if (!Array.isArray(deleteMarker)) {
if (!isArray(deleteMarker)) {
deleteMarker = [deleteMarker];
}
deleteMarker = deleteMarker.map(obj => ({
Expand All @@ -60,10 +61,18 @@ async function getBucketVersions(query = {}, options = {}) {
}
}));
}
let prefixes = result.data.CommonPrefixes || null;
if (prefixes) {
if (!isArray(prefixes)) {
prefixes = [prefixes];
}
prefixes = prefixes.map(item => item.Prefix);
}
return {
res: result.res,
objects,
deleteMarker,
prefixes,
nextMarker: result.data.NextMarker || null,
NextVersionIdMarker: result.data.NextVersionIdMarker || null,
isTruncated: result.data.IsTruncated === 'true'
Expand Down
12 changes: 12 additions & 0 deletions test/node/multiversion.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -89,6 +89,18 @@ describe('test/multiversion.test.js', () => {
assert(false, err.message);
}
});
it('should getBucketVersions with delimiter', async () => {
const names = ['getBucketVersions/delimiter1.js', 'getBucketVersions/delimiter2.js', 'getBucketVersions/delimiter3.js', 'others.js'];
await Promise.all(names.map(_name => store.put(_name, __filename)));
try {
const result = await store.getBucketVersions({
delimiter: '/'
});
assert(result.prefixes && result.prefixes.includes('getBucketVersions/'));
} catch (err) {
assert(false, err.message);
}
});
});

describe('putBucketLifecycle() getBucketLifecycle()', () => {
Expand Down

0 comments on commit 390b449

Please sign in to comment.