Skip to content
This repository was archived by the owner on Feb 26, 2025. It is now read-only.

Commit 0fb064e

Browse files
author
sbeimin
committed
Mock extended for use of new methods
1 parent 31b81b5 commit 0fb064e

File tree

1 file changed

+113
-6
lines changed

1 file changed

+113
-6
lines changed

src/test/java/com/upplication/s3fs/util/AmazonS3ClientMock.java

Lines changed: 113 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -28,22 +28,124 @@
2828
import java.nio.file.Path;
2929
import java.nio.file.SimpleFileVisitor;
3030
import java.nio.file.StandardCopyOption;
31-
import java.nio.file.attribute.*;
32-
import java.util.*;
31+
import java.nio.file.attribute.BasicFileAttributes;
32+
import java.nio.file.attribute.FileAttribute;
33+
import java.nio.file.attribute.PosixFileAttributes;
34+
import java.nio.file.attribute.PosixFilePermission;
35+
import java.util.ArrayList;
36+
import java.util.Collections;
37+
import java.util.Comparator;
38+
import java.util.Date;
39+
import java.util.HashMap;
40+
import java.util.Iterator;
41+
import java.util.List;
42+
import java.util.Map;
43+
import java.util.Set;
44+
import java.util.TreeMap;
3345

3446
import com.amazonaws.AmazonClientException;
3547
import com.amazonaws.AmazonServiceException;
3648
import com.amazonaws.AmazonWebServiceRequest;
3749
import com.amazonaws.HttpMethod;
50+
import com.amazonaws.SdkClientException;
3851
import com.amazonaws.regions.Region;
3952
import com.amazonaws.services.s3.AbstractAmazonS3;
40-
import com.amazonaws.services.s3.AmazonS3;
4153
import com.amazonaws.services.s3.S3ClientOptions;
4254
import com.amazonaws.services.s3.S3ResponseMetadata;
43-
import com.amazonaws.services.s3.model.*;
55+
import com.amazonaws.services.s3.model.AbortMultipartUploadRequest;
56+
import com.amazonaws.services.s3.model.AccessControlList;
57+
import com.amazonaws.services.s3.model.AmazonS3Exception;
58+
import com.amazonaws.services.s3.model.Bucket;
59+
import com.amazonaws.services.s3.model.BucketAccelerateConfiguration;
60+
import com.amazonaws.services.s3.model.BucketCrossOriginConfiguration;
61+
import com.amazonaws.services.s3.model.BucketLifecycleConfiguration;
62+
import com.amazonaws.services.s3.model.BucketLoggingConfiguration;
63+
import com.amazonaws.services.s3.model.BucketNotificationConfiguration;
64+
import com.amazonaws.services.s3.model.BucketPolicy;
65+
import com.amazonaws.services.s3.model.BucketReplicationConfiguration;
66+
import com.amazonaws.services.s3.model.BucketTaggingConfiguration;
67+
import com.amazonaws.services.s3.model.BucketVersioningConfiguration;
68+
import com.amazonaws.services.s3.model.BucketWebsiteConfiguration;
69+
import com.amazonaws.services.s3.model.CannedAccessControlList;
70+
import com.amazonaws.services.s3.model.CompleteMultipartUploadRequest;
71+
import com.amazonaws.services.s3.model.CompleteMultipartUploadResult;
72+
import com.amazonaws.services.s3.model.CopyObjectRequest;
73+
import com.amazonaws.services.s3.model.CopyObjectResult;
74+
import com.amazonaws.services.s3.model.CopyPartRequest;
75+
import com.amazonaws.services.s3.model.CopyPartResult;
76+
import com.amazonaws.services.s3.model.CreateBucketRequest;
77+
import com.amazonaws.services.s3.model.DeleteBucketCrossOriginConfigurationRequest;
78+
import com.amazonaws.services.s3.model.DeleteBucketLifecycleConfigurationRequest;
79+
import com.amazonaws.services.s3.model.DeleteBucketPolicyRequest;
80+
import com.amazonaws.services.s3.model.DeleteBucketReplicationConfigurationRequest;
81+
import com.amazonaws.services.s3.model.DeleteBucketRequest;
82+
import com.amazonaws.services.s3.model.DeleteBucketTaggingConfigurationRequest;
83+
import com.amazonaws.services.s3.model.DeleteBucketWebsiteConfigurationRequest;
84+
import com.amazonaws.services.s3.model.DeleteObjectRequest;
85+
import com.amazonaws.services.s3.model.DeleteObjectsRequest;
86+
import com.amazonaws.services.s3.model.DeleteObjectsResult;
87+
import com.amazonaws.services.s3.model.DeleteVersionRequest;
88+
import com.amazonaws.services.s3.model.GeneratePresignedUrlRequest;
89+
import com.amazonaws.services.s3.model.GetBucketAccelerateConfigurationRequest;
90+
import com.amazonaws.services.s3.model.GetBucketAclRequest;
91+
import com.amazonaws.services.s3.model.GetBucketCrossOriginConfigurationRequest;
92+
import com.amazonaws.services.s3.model.GetBucketLifecycleConfigurationRequest;
93+
import com.amazonaws.services.s3.model.GetBucketLocationRequest;
94+
import com.amazonaws.services.s3.model.GetBucketLoggingConfigurationRequest;
95+
import com.amazonaws.services.s3.model.GetBucketNotificationConfigurationRequest;
96+
import com.amazonaws.services.s3.model.GetBucketPolicyRequest;
97+
import com.amazonaws.services.s3.model.GetBucketReplicationConfigurationRequest;
98+
import com.amazonaws.services.s3.model.GetBucketTaggingConfigurationRequest;
99+
import com.amazonaws.services.s3.model.GetBucketVersioningConfigurationRequest;
100+
import com.amazonaws.services.s3.model.GetBucketWebsiteConfigurationRequest;
101+
import com.amazonaws.services.s3.model.GetObjectAclRequest;
102+
import com.amazonaws.services.s3.model.GetObjectMetadataRequest;
103+
import com.amazonaws.services.s3.model.GetObjectRequest;
104+
import com.amazonaws.services.s3.model.GetS3AccountOwnerRequest;
105+
import com.amazonaws.services.s3.model.Grantee;
106+
import com.amazonaws.services.s3.model.HeadBucketRequest;
107+
import com.amazonaws.services.s3.model.HeadBucketResult;
108+
import com.amazonaws.services.s3.model.InitiateMultipartUploadRequest;
109+
import com.amazonaws.services.s3.model.InitiateMultipartUploadResult;
110+
import com.amazonaws.services.s3.model.ListBucketsRequest;
111+
import com.amazonaws.services.s3.model.ListMultipartUploadsRequest;
112+
import com.amazonaws.services.s3.model.ListNextBatchOfObjectsRequest;
113+
import com.amazonaws.services.s3.model.ListNextBatchOfVersionsRequest;
114+
import com.amazonaws.services.s3.model.ListObjectsRequest;
115+
import com.amazonaws.services.s3.model.ListObjectsV2Request;
116+
import com.amazonaws.services.s3.model.ListObjectsV2Result;
117+
import com.amazonaws.services.s3.model.ListPartsRequest;
118+
import com.amazonaws.services.s3.model.ListVersionsRequest;
119+
import com.amazonaws.services.s3.model.MultipartUploadListing;
120+
import com.amazonaws.services.s3.model.ObjectListing;
121+
import com.amazonaws.services.s3.model.ObjectMetadata;
122+
import com.amazonaws.services.s3.model.Owner;
123+
import com.amazonaws.services.s3.model.PartListing;
124+
import com.amazonaws.services.s3.model.Permission;
125+
import com.amazonaws.services.s3.model.PutObjectRequest;
126+
import com.amazonaws.services.s3.model.PutObjectResult;
127+
import com.amazonaws.services.s3.model.RestoreObjectRequest;
128+
import com.amazonaws.services.s3.model.S3Object;
129+
import com.amazonaws.services.s3.model.S3ObjectInputStream;
130+
import com.amazonaws.services.s3.model.S3ObjectSummary;
131+
import com.amazonaws.services.s3.model.SetBucketAccelerateConfigurationRequest;
132+
import com.amazonaws.services.s3.model.SetBucketAclRequest;
133+
import com.amazonaws.services.s3.model.SetBucketCrossOriginConfigurationRequest;
134+
import com.amazonaws.services.s3.model.SetBucketLifecycleConfigurationRequest;
135+
import com.amazonaws.services.s3.model.SetBucketLoggingConfigurationRequest;
136+
import com.amazonaws.services.s3.model.SetBucketNotificationConfigurationRequest;
137+
import com.amazonaws.services.s3.model.SetBucketPolicyRequest;
138+
import com.amazonaws.services.s3.model.SetBucketReplicationConfigurationRequest;
139+
import com.amazonaws.services.s3.model.SetBucketTaggingConfigurationRequest;
140+
import com.amazonaws.services.s3.model.SetBucketVersioningConfigurationRequest;
141+
import com.amazonaws.services.s3.model.SetBucketWebsiteConfigurationRequest;
142+
import com.amazonaws.services.s3.model.SetObjectAclRequest;
143+
import com.amazonaws.services.s3.model.StorageClass;
144+
import com.amazonaws.services.s3.model.UploadPartRequest;
145+
import com.amazonaws.services.s3.model.UploadPartResult;
146+
import com.amazonaws.services.s3.model.VersionListing;
44147
import com.amazonaws.services.s3.waiters.AmazonS3Waiters;
45148
import com.amazonaws.util.StringUtils;
46-
import org.apache.http.MethodNotSupportedException;
47149

48150
public class AmazonS3ClientMock extends AbstractAmazonS3 {
49151
/**
@@ -537,7 +639,7 @@ public String getIdentifier() {
537639
}
538640
}
539641
}catch (IOException e) {
540-
throw new RuntimeException(e);
642+
throw new AmazonS3Exception("Problem creating Acl", e);
541643
}
542644

543645
return res;
@@ -1346,4 +1448,9 @@ public URL getUrl(String bucketName, String key) {
13461448
public AmazonS3Waiters waiters() {
13471449
throw new UnsupportedOperationException();
13481450
}
1451+
1452+
@Override
1453+
public boolean doesBucketExistV2(String bucketName) throws SdkClientException, AmazonServiceException {
1454+
return Files.exists(base.resolve(bucketName));
1455+
}
13491456
}

0 commit comments

Comments
 (0)