Skip to content

Commit 4ebc6e9

Browse files
committed
DATAMONGO-385 - Added test case to show repositories working with Long id.
1 parent 91fe548 commit 4ebc6e9

File tree

1 file changed

+25
-4
lines changed

1 file changed

+25
-4
lines changed

spring-data-mongodb/src/test/java/org/springframework/data/mongodb/repository/support/MongoRepositoryFactoryUnitTests.java

+25-4
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
*/
1616
package org.springframework.data.mongodb.repository.support;
1717

18+
import static org.hamcrest.CoreMatchers.*;
1819
import static org.junit.Assert.*;
1920
import static org.mockito.Mockito.*;
2021

@@ -29,9 +30,9 @@
2930
import org.springframework.data.mongodb.core.MongoTemplate;
3031
import org.springframework.data.mongodb.core.convert.MongoConverter;
3132
import org.springframework.data.mongodb.core.mapping.MongoPersistentEntity;
32-
import org.springframework.data.mongodb.core.mapping.MongoPersistentProperty;
3333
import org.springframework.data.mongodb.repository.Person;
3434
import org.springframework.data.mongodb.repository.query.MongoEntityInformation;
35+
import org.springframework.data.repository.Repository;
3536

3637
/**
3738
* Unit test for {@link MongoRepositoryFactory}.
@@ -48,17 +49,18 @@ public class MongoRepositoryFactoryUnitTests {
4849
MongoConverter converter;
4950

5051
@Mock
51-
MappingContext<MongoPersistentEntity<?>, MongoPersistentProperty> mappingContext;
52+
@SuppressWarnings("rawtypes")
53+
MappingContext mappingContext;
5254

5355
@Mock
5456
@SuppressWarnings("rawtypes")
5557
MongoPersistentEntity entity;
5658

5759
@Before
58-
@SuppressWarnings({ "rawtypes", "unchecked" })
60+
@SuppressWarnings("unchecked")
5961
public void setUp() {
6062
when(template.getConverter()).thenReturn(converter);
61-
when(converter.getMappingContext()).thenReturn((MappingContext) mappingContext);
63+
when(converter.getMappingContext()).thenReturn(mappingContext);
6264
}
6365

6466
@Test
@@ -72,4 +74,23 @@ public void usesMappingMongoEntityInformationIfMappingContextSet() {
7274
MongoEntityInformation<Person, Serializable> entityInformation = factory.getEntityInformation(Person.class);
7375
assertTrue(entityInformation instanceof MappingMongoEntityInformation);
7476
}
77+
78+
/**
79+
* @see DATAMONGO-385
80+
*/
81+
@Test
82+
@SuppressWarnings("unchecked")
83+
public void createsRepositoryWithIdTypeLong() {
84+
85+
when(mappingContext.getPersistentEntity(Person.class)).thenReturn(entity);
86+
when(entity.getType()).thenReturn(Person.class);
87+
88+
MongoRepositoryFactory factory = new MongoRepositoryFactory(template);
89+
MyPersonRepository repository = factory.getRepository(MyPersonRepository.class);
90+
assertThat(repository, is(notNullValue()));
91+
}
92+
93+
interface MyPersonRepository extends Repository<Person, Long> {
94+
95+
}
7596
}

0 commit comments

Comments
 (0)