Skip to content

Commit 44fc740

Browse files
committed
Reactivate & fix old tests
1 parent d9737a6 commit 44fc740

File tree

4 files changed

+30
-24
lines changed

4 files changed

+30
-24
lines changed

src/test/java/org/socialsignin/spring/data/dynamodb/core/DynamoDBTemplateIT.java

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,10 @@
2323
import org.junit.Test;
2424
import org.junit.runner.RunWith;
2525
import org.socialsignin.spring.data.dynamodb.domain.sample.User;
26+
import org.socialsignin.spring.data.dynamodb.repository.config.EnableDynamoDBRepositories;
2627
import org.socialsignin.spring.data.dynamodb.utils.DynamoDBLocalResource;
2728
import org.springframework.beans.factory.annotation.Autowired;
29+
import org.springframework.context.annotation.Configuration;
2830
import org.springframework.test.context.ContextConfiguration;
2931
import org.springframework.test.context.TestPropertySource;
3032
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
@@ -35,21 +37,18 @@
3537
* Integration test that interacts with DynamoDB Local instance.
3638
*/
3739
@RunWith(SpringJUnit4ClassRunner.class)
38-
@ContextConfiguration(classes = {DynamoDBLocalResource.class})
40+
@ContextConfiguration(classes = {DynamoDBLocalResource.class, DynamoDBTemplateIT.TestAppConfig.class})
3941
@TestPropertySource(properties = {"spring.data.dynamodb.entity2ddl.auto=create"})
4042
public class DynamoDBTemplateIT {
4143

4244
@Autowired
4345
private AmazonDynamoDB amazonDynamoDB;
44-
private DynamoDBTemplate dynamoDBTemplate;
45-
@Autowired
46-
private DynamoDBMapper mapper;
4746
@Autowired
48-
private DynamoDBMapperConfig mapperConfig;
47+
private DynamoDBTemplate dynamoDBTemplate;
4948

50-
@Before
51-
public void setUp() {
52-
this.dynamoDBTemplate = new DynamoDBTemplate(amazonDynamoDB, mapper, mapperConfig);
49+
@Configuration
50+
@EnableDynamoDBRepositories(basePackages = "org.socialsignin.spring.data.dynamodb.domain.sample")
51+
public static class TestAppConfig {
5352
}
5453

5554
@Test

src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/CRUDOperationsIT.java

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,8 @@
3838
import java.util.Arrays;
3939
import java.util.List;
4040
import java.util.Optional;
41+
import java.util.concurrent.ExecutionException;
42+
import java.util.concurrent.Future;
4143
import java.util.concurrent.ThreadLocalRandom;
4244
import java.util.function.Supplier;
4345

@@ -123,10 +125,10 @@ public void testProjection() {
123125
}
124126

125127
@Test
126-
public void testEmptyResult() {
128+
public void testEmptyResult() throws InterruptedException, ExecutionException {
127129

128-
Optional<User> actual1 = userRepository.findByNameAndPostCode("does not", "exist");
129-
assertFalse(actual1.isPresent());
130+
Future<User> actual1 = userRepository.findByNameAndPostCode("does not", "exist");
131+
assertNull(actual1.get());
130132

131133
User actual2 = userRepository.findByNameAndLeaveDate("does not exist", Instant.now());
132134
assertNull(actual2);

src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/Jdk8IT.java

Lines changed: 17 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -32,10 +32,11 @@
3232
import java.util.UUID;
3333
import java.util.concurrent.ExecutionException;
3434
import java.util.concurrent.Future;
35-
import java.util.concurrent.TimeUnit;
3635
import java.util.concurrent.TimeoutException;
36+
import java.util.function.Consumer;
3737
import static org.junit.Assert.assertEquals;
3838
import static org.junit.Assert.assertNotNull;
39+
import static org.junit.Assert.assertTrue;
3940

4041
/**
4142
* Tests JDK8 features of spring-data
@@ -86,15 +87,21 @@ public void testFuture() throws InterruptedException, ExecutionException, Timeou
8687
user.setPostCode("postCode");
8788
user = userRepository.save(user);
8889

89-
User actual;
90-
// Future<User> result
91-
actual = userRepository.findByName("testFuture").get();
92-
// assertNotNull(result);
93-
// User actual = result.get(1, TimeUnit.MINUTES);
94-
95-
assertNotNull(actual);
96-
assertNotNull(actual.getId());
97-
assertEquals("postCode", actual.getPostCode());
90+
Consumer<User> validate = (actual) -> {
91+
assertNotNull(actual);
92+
assertNotNull(actual.getId());
93+
assertEquals("postCode", actual.getPostCode());
94+
};
95+
96+
Optional<User> actual1 = userRepository.findByName("testFuture");
97+
assertNotNull(actual1);
98+
assertTrue(actual1.isPresent());
99+
validate.accept(actual1.get());
100+
101+
Future<User> actual2 = userRepository.findByNameAndPostCode("testFuture", "postCode");
102+
assertNotNull(actual1);
103+
assertTrue(actual2.isDone());
104+
validate.accept(actual2.get());
98105
}
99106

100107
@Test

src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/UserRepository.java

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ public interface UserRepository extends CrudRepository<User, String> {
4040
Optional<User> findByName(String name);
4141

4242
@EnableScan
43-
Future<User> findOneByPostCode(String postCode);
43+
Future<User> findByNameAndPostCode(String name, String postCode);
4444
@EnableScan
4545
User findFirstByPostCode(String postCode);
4646

@@ -55,8 +55,6 @@ public interface UserRepository extends CrudRepository<User, String> {
5555
@Query(fields = "leaveDate")
5656
List<User> findByPostCode(String postCode);
5757

58-
@EnableScan
59-
Optional<User> findByNameAndPostCode(String name, String postcode);
6058
@EnableScan
6159
User findByNameAndLeaveDate(String name, Instant leaveDate);
6260

0 commit comments

Comments
 (0)