1
2
3
4
5 package com.jcabi.dynamo.retry;
6
7 import com.jcabi.dynamo.Attributes;
8 import com.jcabi.dynamo.Region;
9 import com.jcabi.dynamo.Table;
10 import org.junit.jupiter.api.Assertions;
11 import org.junit.jupiter.api.Test;
12 import org.mockito.Mockito;
13 import software.amazon.awssdk.core.exception.SdkClientException;
14
15
16
17
18
19 final class ReRegionTest {
20
21 @Test
22 void retriesAwsCalls() throws Exception {
23 final Table table = Mockito.mock(Table.class);
24 Mockito.doThrow(
25 SdkClientException.builder().message("hey you").build()
26 ).when(table).put(new Attributes());
27 final Region origin = Mockito.mock(Region.class);
28 Mockito.doReturn(table).when(origin).table(Mockito.anyString());
29 final Table retried = new ReRegion(origin).table("test");
30 Assertions.assertThrows(
31 SdkClientException.class,
32 () -> retried.put(new Attributes())
33 );
34 }
35
36 }