Skip to content

Commit 96340bc

Browse files
committed
put operation related bucket tests migration
Issue: CLDSRV-724
1 parent 4427dcf commit 96340bc

File tree

11 files changed

+1228
-1115
lines changed

11 files changed

+1228
-1115
lines changed

tests/functional/aws-node-sdk/test/bucket/put.js

Lines changed: 152 additions & 158 deletions
Large diffs are not rendered by default.
Lines changed: 62 additions & 75 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
const assert = require('assert');
2-
const { S3 } = require('aws-sdk');
2+
const { S3Client,
3+
CreateBucketCommand,
4+
DeleteBucketCommand,
5+
PutBucketAclCommand,
6+
GetBucketAclCommand } = require('@aws-sdk/client-s3');
37
const getConfig = require('../support/config');
48
const withV4 = require('../support/withV4');
59
const BucketUtility = require('../../lib/utility/bucket-util');
@@ -24,18 +28,16 @@ for (let i = 0; i < 100000; i++) {
2428
describe('aws-node-sdk test bucket put acl', () => {
2529
let s3;
2630

27-
// setup test
28-
before(done => {
31+
before(async () => {
2932
const config = getConfig('default', { signatureVersion: 'v4' });
30-
s3 = new S3(config);
31-
s3.createBucket({ Bucket: bucket }, done);
33+
s3 = new S3Client(config);
34+
await s3.send(new CreateBucketCommand({ Bucket: bucket }));
3235
});
3336

34-
// delete bucket after testing
35-
after(done => s3.deleteBucket({ Bucket: bucket }, done));
37+
after(() => s3.send(new DeleteBucketCommand({ Bucket: bucket })));
3638

3739
const itSkipIfAWS = process.env.AWS_ON_AIR ? it.skip : it;
38-
itSkipIfAWS('should not accept xml body larger than 512 KB', done => {
40+
itSkipIfAWS('should not accept xml body larger than 512 KB', async () => {
3941
const params = {
4042
Bucket: bucket,
4143
AccessControlPolicy: {
@@ -46,16 +48,14 @@ describe('aws-node-sdk test bucket put acl', () => {
4648
},
4749
},
4850
};
49-
s3.putBucketAcl(params, error => {
50-
if (error) {
51-
assert.strictEqual(error.statusCode, 400);
52-
assert.strictEqual(
53-
error.code, 'InvalidRequest');
54-
done();
55-
} else {
56-
done('accepted xml body larger than 512 KB');
57-
}
58-
});
51+
try {
52+
await s3.send(new PutBucketAclCommand(params));
53+
throw new Error('accepted xml body larger than 512 KB');
54+
} catch (error) {
55+
assert.strictEqual(error.$metadata.httpStatusCode, 400);
56+
assert.strictEqual(
57+
error.name, 'InvalidRequest');
58+
}
5959
});
6060
});
6161

@@ -64,76 +64,63 @@ describe('PUT Bucket ACL', () => {
6464
const bucketUtil = new BucketUtility('default', sigCfg);
6565
const s3 = bucketUtil.s3;
6666

67-
beforeEach(() => {
68-
process.stdout.write('About to create bucket');
69-
return bucketUtil.createOne(bucketName).catch(err => {
70-
process.stdout.write(`Error in beforeEach ${err}\n`);
71-
throw err;
72-
});
73-
});
67+
beforeEach(() => bucketUtil.createOne(bucketName));
7468

75-
afterEach(() => {
76-
process.stdout.write('About to delete bucket');
77-
return bucketUtil.deleteOne(bucketName).catch(err => {
78-
process.stdout.write(`Error in afterEach ${err}\n`);
79-
throw err;
80-
});
81-
});
69+
afterEach(() => bucketUtil.deleteOne(bucketName));
8270

8371
it('should set multiple ACL permissions with same grantee specified' +
84-
'using email', done => {
85-
s3.putBucketAcl({
72+
'using email', async () => {
73+
await s3.send(new PutBucketAclCommand({
8674
Bucket: bucketName,
8775
GrantRead: '[email protected]',
8876
GrantWrite: '[email protected]',
89-
}, err => {
90-
assert(!err);
91-
s3.getBucketAcl({
92-
Bucket: bucketName,
93-
}, (err, res) => {
94-
assert(!err);
95-
// expect both READ and WRITE grants to exist
96-
assert.strictEqual(res.Grants.length, 2);
97-
return done();
98-
});
99-
});
77+
}));
78+
const res = await s3.send(new GetBucketAclCommand({
79+
Bucket: bucketName,
80+
}));
81+
assert.strictEqual(res.Grants.length, 2);
10082
});
10183

10284
it('should return InvalidArgument if invalid grantee ' +
103-
'user ID provided in ACL header request', done => {
104-
s3.putBucketAcl({
105-
Bucket: bucketName,
106-
GrantRead: 'id=invalidUserID' }, err => {
107-
assert.strictEqual(err.statusCode, 400);
108-
assert.strictEqual(err.code, 'InvalidArgument');
109-
done();
110-
});
85+
'user ID provided in ACL header request', async () => {
86+
try {
87+
await s3.send(new PutBucketAclCommand({
88+
Bucket: bucketName,
89+
GrantRead: 'id=invalidUserID'
90+
}));
91+
throw new Error('Expected InvalidArgument error');
92+
} catch (err) {
93+
assert.strictEqual(err.$metadata.httpStatusCode, 400);
94+
assert.strictEqual(err.name, 'InvalidArgument');
95+
}
11196
});
11297

11398
it('should return InvalidArgument if invalid grantee ' +
114-
'user ID provided in ACL request body', done => {
115-
s3.putBucketAcl({
116-
Bucket: bucketName,
117-
AccessControlPolicy: {
118-
Grants: [
119-
{
120-
Grantee: {
121-
Type: 'CanonicalUser',
122-
ID: 'invalidUserID',
123-
},
124-
Permission: 'WRITE_ACP',
125-
}],
126-
Owner: {
127-
DisplayName: 'Bart',
128-
ID: '79a59df900b949e55d96a1e698fbace' +
129-
'dfd6e09d98eacf8f8d5218e7cd47ef2be',
99+
'user ID provided in ACL request body', async () => {
100+
try {
101+
await s3.send(new PutBucketAclCommand({
102+
Bucket: bucketName,
103+
AccessControlPolicy: {
104+
Grants: [
105+
{
106+
Grantee: {
107+
Type: 'CanonicalUser',
108+
ID: 'invalidUserID',
109+
},
110+
Permission: 'WRITE_ACP',
111+
}],
112+
Owner: {
113+
DisplayName: 'Bart',
114+
ID: '79a59df900b949e55d96a1e698fbace' +
115+
'dfd6e09d98eacf8f8d5218e7cd47ef2be',
116+
},
130117
},
131-
},
132-
}, err => {
133-
assert.strictEqual(err.statusCode, 400);
134-
assert.strictEqual(err.code, 'InvalidArgument');
135-
done();
136-
});
118+
}));
119+
throw new Error('Expected InvalidArgument error');
120+
} catch (err) {
121+
assert.strictEqual(err.$metadata.httpStatusCode, 400);
122+
assert.strictEqual(err.name, 'InvalidArgument');
123+
}
137124
});
138125
});
139126
});

0 commit comments

Comments
 (0)