DATADOC-1 addded tests for enums

This commit is contained in:
Thomas Risberg
2010-12-15 18:00:05 -05:00
parent b24e004377
commit 95e5f703b5
2 changed files with 85 additions and 0 deletions

View File

@@ -30,6 +30,8 @@ import java.util.Map;
import org.junit.Assert;
import org.junit.Test;
import org.springframework.data.document.mongodb.SimpleMongoConverter;
import org.springframework.data.document.mongodb.SomeEnumTest.NumberEnum;
import org.springframework.data.document.mongodb.SomeEnumTest.StringEnum;
import org.springframework.util.ReflectionUtils;
import com.mongodb.BasicDBObject;
@@ -164,6 +166,25 @@ public class SimpleMongoConverterTests {
return tb;
}
@Test
public void objectWithEnumTypes() {
SomeEnumTest test = new SomeEnumTest();
test.setId("123AAA");
test.setName("Sven");
test.setStringEnum(StringEnum.ONE);
test.setNumberEnum(NumberEnum.FIVE);
SimpleMongoConverter converter = createConverter();
DBObject dbo = new BasicDBObject();
converter.write(test, dbo);
SomeEnumTest results = (SomeEnumTest) converter.read(SomeEnumTest.class, dbo);
Assert.assertNotNull(results);
Assert.assertEquals(test.getId(), results.getId());
Assert.assertEquals(test.getName(), results.getName());
Assert.assertEquals(test.getStringEnum(), results.getStringEnum());
Assert.assertEquals(test.getNumberEnum(), results.getNumberEnum());
}
@Test
public void testReflection() {
Portfolio p = createPortfolioWithManagers();

View File

@@ -0,0 +1,64 @@
package org.springframework.data.document.mongodb;
public class SomeEnumTest {
public enum StringEnum {
ONE, TWO, FIVE;
}
public enum NumberEnum {
ONE (1), TWO (2), FIVE(5);
private int value;
public int value() {
return value;
}
NumberEnum(int value) {
this.value = value;
}
}
private StringEnum stringEnum;
private NumberEnum numberEnum;
private String id;
private String name;
public StringEnum getStringEnum() {
return stringEnum;
}
public void setStringEnum(StringEnum stringEnum) {
this.stringEnum = stringEnum;
}
public NumberEnum getNumberEnum() {
return numberEnum;
}
public void setNumberEnum(NumberEnum numberEnum) {
this.numberEnum = numberEnum;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}