Refactored the DataPolicyConverter for basic code cleanup and added a value to the Policy enum for PARTITION. Added additional test cases in the corresponding test class. Refactored the resolveDataPolicy method in the RegionFactoryBean making use of helper methods.

This commit is contained in:
John Blum
2013-10-18 14:23:35 -07:00
parent 8deda7804c
commit c34adc9f6a
3 changed files with 85 additions and 54 deletions

View File

@@ -27,11 +27,39 @@ import com.gemstone.gemfire.cache.DataPolicy;
*
*/
public class DataPolicyConverterTest {
DataPolicyConverter converter = new DataPolicyConverter();
private final DataPolicyConverter converter = new DataPolicyConverter();
protected int getDataPolicyEnumerationSize() {
for (byte ordinal = 0; true; ordinal++) {
try {
DataPolicy.fromOrdinal(ordinal);
}
catch (Exception e) {
return ordinal;
}
}
}
@Test
public void test() {
public void testPolicyToDataPolicy() {
// exclude DEFAULT
assertEquals(getDataPolicyEnumerationSize(), DataPolicyConverter.Policy.values().length - 1);
assertEquals(DataPolicy.EMPTY, DataPolicyConverter.Policy.EMPTY.toDataPolicy());
assertEquals(DataPolicy.NORMAL, DataPolicyConverter.Policy.NORMAL.toDataPolicy());
assertEquals(DataPolicy.PRELOADED, DataPolicyConverter.Policy.PRELOADED.toDataPolicy());
assertEquals(DataPolicy.PARTITION, DataPolicyConverter.Policy.PARTITION.toDataPolicy());
assertEquals(DataPolicy.PERSISTENT_PARTITION, DataPolicyConverter.Policy.PERSISTENT_PARTITION.toDataPolicy());
assertEquals(DataPolicy.REPLICATE, DataPolicyConverter.Policy.REPLICATE.toDataPolicy());
assertEquals(DataPolicy.PERSISTENT_REPLICATE, DataPolicyConverter.Policy.PERSISTENT_REPLICATE.toDataPolicy());
assertEquals(DataPolicy.DEFAULT, DataPolicyConverter.Policy.DEFAULT.toDataPolicy());
}
@Test
public void testConvert() {
assertEquals(DataPolicy.EMPTY, converter.convert("empty"));
assertEquals(DataPolicy.PARTITION, converter.convert("Partition"));
assertEquals(DataPolicy.PERSISTENT_REPLICATE, converter.convert("PERSISTENT_REPLICATE"));
assertNull(converter.convert("invalid"));
assertNull(converter.convert(null));
}