Skip to content

Commit 4d018aa

Browse files
Michael Wolfederjust
authored andcommitted
Adding DynamoDBEntityMetadataSupport unit tests
* Moving the DynamoDBMarshaller annotation for the User.joinYear property from the getter method to the field. * Adding unit tests to test both field and method retrieval.
1 parent 79f9b26 commit 4d018aa

File tree

2 files changed

+36
-2
lines changed

2 files changed

+36
-2
lines changed

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

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,8 @@ public class User {
3535
private Integer numberOfPlaylists;
3636

3737
private Date joinDate;
38-
38+
39+
@DynamoDBMarshalling(marshallerClass=DynamoDBYearMarshaller.class)
3940
private Date joinYear;
4041

4142
private Instant leaveDate;
@@ -61,7 +62,6 @@ public void setJoinDate(Date joinDate) {
6162
this.joinDate = joinDate;
6263
}
6364

64-
@DynamoDBMarshalling(marshallerClass=DynamoDBYearMarshaller.class)
6565
public Date getJoinYear() {
6666
return joinYear;
6767
}
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
package org.socialsignin.spring.data.dynamodb.repository.support;
2+
3+
import com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBMarshaller;
4+
import org.junit.Assert;
5+
import org.junit.Before;
6+
import org.junit.Test;
7+
import org.junit.runner.RunWith;
8+
import org.mockito.Mock;
9+
import org.mockito.Mockito;
10+
import org.mockito.runners.MockitoJUnitRunner;
11+
import org.socialsignin.spring.data.dynamodb.domain.sample.Playlist;
12+
import org.socialsignin.spring.data.dynamodb.domain.sample.PlaylistId;
13+
import org.socialsignin.spring.data.dynamodb.domain.sample.User;
14+
15+
@RunWith(MockitoJUnitRunner.class)
16+
@SuppressWarnings("unused")
17+
public class DynamoDBEntityMetadataSupportUnitTest {
18+
19+
@Test
20+
public void testGetMarshallerForProperty_WhenAnnotationIsOnField_AndReturnsDynamoDBMarshaller()
21+
{
22+
DynamoDBEntityMetadataSupport support = new DynamoDBEntityMetadataSupport(User.class);
23+
DynamoDBMarshaller fieldAnnotation = support.getMarshallerForProperty("joinYear");
24+
Assert.assertNotNull(fieldAnnotation);
25+
}
26+
27+
@Test
28+
public void testGetMarshallerForProperty_WhenAnnotationIsOnMethod_AndReturnsDynamoDBMarshaller()
29+
{
30+
DynamoDBEntityMetadataSupport support = new DynamoDBEntityMetadataSupport(User.class);
31+
DynamoDBMarshaller methodAnnotation = support.getMarshallerForProperty("leaveDate");
32+
Assert.assertNotNull(methodAnnotation);
33+
}
34+
}

0 commit comments

Comments
 (0)