Skip to content

Commit 639ef96

Browse files
authoredSep 17, 2024
feat(storage): implement multiple buckets support (#2904)
1 parent b4cda6c commit 639ef96

File tree

64 files changed

+2230
-188
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

64 files changed

+2230
-188
lines changed
 

‎aws-storage-s3/src/androidTest/java/com/amplifyframework/storage/s3/AWSS3StorageDownloadAccessLevelTest.java

+46
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
import com.amplifyframework.storage.StorageCategory;
2424
import com.amplifyframework.storage.StorageException;
2525
import com.amplifyframework.storage.options.StorageDownloadFileOptions;
26+
import com.amplifyframework.storage.options.StorageRemoveOptions;
2627
import com.amplifyframework.storage.options.StorageUploadFileOptions;
2728
import com.amplifyframework.storage.s3.UserCredentials.Credential;
2829
import com.amplifyframework.storage.s3.UserCredentials.IdentityIdSource;
@@ -33,6 +34,7 @@
3334
import com.amplifyframework.testutils.sync.SynchronousAuth;
3435
import com.amplifyframework.testutils.sync.SynchronousStorage;
3536

37+
import org.junit.AfterClass;
3638
import org.junit.Before;
3739
import org.junit.BeforeClass;
3840
import org.junit.Test;
@@ -85,6 +87,15 @@ public static void setUpOnce() throws Exception {
8587
uploadTestFile();
8688
}
8789

90+
/**
91+
* Clean up test resources from test suite.
92+
* @throws Exception from failure to remove test resources.
93+
*/
94+
@AfterClass
95+
public static void tearDownOnce() throws Exception {
96+
removeUploadedTestFiles();
97+
}
98+
8899
/**
89100
* Signs out by default and sets up download file destination.
90101
*
@@ -263,4 +274,39 @@ private static void uploadTestFile() throws Exception {
263274
.build();
264275
storage.uploadFile(key, uploadFile, options);
265276
}
277+
278+
private static void removeUploadedTestFiles() throws Exception {
279+
final String key = UPLOAD_NAME;
280+
281+
synchronousAuth.signOut();
282+
synchronousAuth.signIn(userOne.getUsername(), userOne.getPassword());
283+
284+
StorageRemoveOptions options;
285+
options = StorageRemoveOptions.builder()
286+
.accessLevel(StorageAccessLevel.PUBLIC)
287+
.build();
288+
storage.remove(key, options);
289+
290+
options = StorageRemoveOptions.builder()
291+
.accessLevel(StorageAccessLevel.PROTECTED)
292+
.build();
293+
storage.remove(key, options);
294+
295+
options = StorageRemoveOptions.builder()
296+
.accessLevel(StorageAccessLevel.PRIVATE)
297+
.build();
298+
storage.remove(key, options);
299+
300+
// Upload as user two
301+
synchronousAuth.signOut();
302+
synchronousAuth.signIn(userTwo.getUsername(), userTwo.getPassword());
303+
options = StorageRemoveOptions.builder()
304+
.accessLevel(StorageAccessLevel.PROTECTED)
305+
.build();
306+
storage.remove(key, options);
307+
options = StorageRemoveOptions.builder()
308+
.accessLevel(StorageAccessLevel.PRIVATE)
309+
.build();
310+
storage.remove(key, options);
311+
}
266312
}

‎aws-storage-s3/src/androidTest/java/com/amplifyframework/storage/s3/AWSS3StorageDownloadTest.java

+18-2
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@
1717

1818
import android.content.Context;
1919

20-
import com.amplifyframework.auth.AuthPlugin;
2120
import com.amplifyframework.auth.cognito.AWSCognitoAuthPlugin;
2221
import com.amplifyframework.core.Amplify;
2322
import com.amplifyframework.core.async.Cancelable;
@@ -31,6 +30,7 @@
3130
import com.amplifyframework.storage.TransferState;
3231
import com.amplifyframework.storage.operation.StorageDownloadFileOperation;
3332
import com.amplifyframework.storage.options.StorageDownloadFileOptions;
33+
import com.amplifyframework.storage.options.StorageRemoveOptions;
3434
import com.amplifyframework.storage.options.StorageUploadFileOptions;
3535
import com.amplifyframework.storage.s3.options.AWSS3StorageDownloadFileOptions;
3636
import com.amplifyframework.storage.s3.test.R;
@@ -41,6 +41,7 @@
4141
import com.amplifyframework.testutils.sync.SynchronousStorage;
4242

4343
import org.junit.After;
44+
import org.junit.AfterClass;
4445
import org.junit.Before;
4546
import org.junit.BeforeClass;
4647
import org.junit.Test;
@@ -89,7 +90,7 @@ public final class AWSS3StorageDownloadTest {
8990
public static void setUpOnce() throws Exception {
9091
Context context = getApplicationContext();
9192
WorkmanagerTestUtils.INSTANCE.initializeWorkmanagerTestUtil(context);
92-
SynchronousAuth.delegatingToCognito(context, (AuthPlugin) new AWSCognitoAuthPlugin());
93+
SynchronousAuth.delegatingToCognito(context, new AWSCognitoAuthPlugin());
9394

9495
// Get a handle to storage
9596
storageCategory = TestStorageCategory.create(context, R.raw.amplifyconfiguration);
@@ -112,6 +113,21 @@ public static void setUpOnce() throws Exception {
112113
synchronousStorage.uploadFile(key, smallFile, uploadOptions);
113114
}
114115

116+
/**
117+
* Clean up test resources from test suite.
118+
* @throws Exception from failure to remove test resources.
119+
*/
120+
@AfterClass
121+
public static void tearDownOnce() throws Exception {
122+
StorageRemoveOptions options = StorageRemoveOptions
123+
.builder()
124+
.accessLevel(TESTING_ACCESS_LEVEL)
125+
.build();
126+
127+
synchronousStorage.remove(SMALL_FILE_NAME, options);
128+
synchronousStorage.remove(LARGE_FILE_NAME, options);
129+
}
130+
115131
/**
116132
* Sets up the options to use for transfer.
117133
*

0 commit comments

Comments
 (0)