-
Notifications
You must be signed in to change notification settings - Fork 48
Expand file tree
/
Copy pathAbstractTestBase.java
More file actions
66 lines (58 loc) · 2.68 KB
/
AbstractTestBase.java
File metadata and controls
66 lines (58 loc) · 2.68 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
package {{ package_name }};
import java.util.concurrent.CompletableFuture;
import java.util.function.Function;
import software.amazon.awssdk.awscore.AwsRequest;
import software.amazon.awssdk.awscore.AwsResponse;
import software.amazon.awssdk.core.SdkClient;
import software.amazon.awssdk.core.ResponseBytes;
import software.amazon.awssdk.core.ResponseInputStream;
import software.amazon.awssdk.core.pagination.sync.SdkIterable;
import software.amazon.cloudformation.proxy.AmazonWebServicesClientProxy;
import software.amazon.cloudformation.proxy.Credentials;
import software.amazon.cloudformation.proxy.LoggerProxy;
import software.amazon.cloudformation.proxy.ProxyClient;
public class AbstractTestBase {
protected static final Credentials MOCK_CREDENTIALS;
protected static final LoggerProxy logger;
static {
MOCK_CREDENTIALS = new Credentials("accessKey", "secretKey", "token");
logger = new LoggerProxy();
}
static ProxyClient<SdkClient> MOCK_PROXY(
final AmazonWebServicesClientProxy proxy,
final SdkClient sdkClient) {
return new ProxyClient<SdkClient>() {
@Override
public <RequestT extends AwsRequest, ResponseT extends AwsResponse> ResponseT
injectCredentialsAndInvokeV2(RequestT request, Function<RequestT, ResponseT> requestFunction) {
return proxy.injectCredentialsAndInvokeV2(request, requestFunction);
}
@Override
public <RequestT extends AwsRequest, ResponseT extends AwsResponse>
CompletableFuture<ResponseT>
injectCredentialsAndInvokeV2Async(RequestT request, Function<RequestT, CompletableFuture<ResponseT>> requestFunction) {
throw new UnsupportedOperationException();
}
@Override
public <RequestT extends AwsRequest, ResponseT extends AwsResponse, IterableT extends SdkIterable<ResponseT>>
IterableT
injectCredentialsAndInvokeIterableV2(RequestT request, Function<RequestT, IterableT> requestFunction) {
return proxy.injectCredentialsAndInvokeIterableV2(request, requestFunction);
}
@Override
public <RequestT extends AwsRequest, ResponseT extends AwsResponse> ResponseInputStream<ResponseT>
injectCredentialsAndInvokeV2InputStream(RequestT requestT, Function<RequestT, ResponseInputStream<ResponseT>> function) {
throw new UnsupportedOperationException();
}
@Override
public <RequestT extends AwsRequest, ResponseT extends AwsResponse> ResponseBytes<ResponseT>
injectCredentialsAndInvokeV2Bytes(RequestT requestT, Function<RequestT, ResponseBytes<ResponseT>> function) {
throw new UnsupportedOperationException();
}
@Override
public SdkClient client() {
return sdkClient;
}
};
}
}