package VASSAL.counters; import static org.junit.Assert.assertEquals; import java.util.ArrayList; import java.util.List; import org.junit.Test; import VASSAL.configure.ListConfigurerHelper; import VASSAL.counters.DynamicProperty.DynamicKeyCommand; import VASSAL.counters.DynamicProperty.DynamicKeyCommandConfigurer; public class DynamicPropertySerializeTest extends SerializeTest<DynamicProperty> { @Test public void serialize() throws Exception { DynamicProperty dp = new DynamicProperty(); dp.key = "testKey"; dp.numeric = false; dp.minValue = 1; dp.maxValue = 2; dp.wrap = false; DynamicKeyCommandConfigurer dkcc1 = new DynamicKeyCommandConfigurer(dp); dkcc1.setName("name1"); dkcc1.setFrozen(true); dkcc1.setValue("value1"); dkcc1.updateValue(); DynamicKeyCommandConfigurer dkcc2 = new DynamicKeyCommandConfigurer(dp); dkcc2.setName("name2"); dkcc2.setFrozen(true); dkcc2.setValue("value2"); dkcc2.updateValue(); List<DynamicKeyCommand> keyCommands = new ArrayList<DynamicKeyCommand>(); keyCommands.add(dkcc1.getKeyCommand()); keyCommands.add(dkcc2.getKeyCommand()); ListConfigurerHelper.getList(dp.keyCommandListConfig).add(dkcc1); ListConfigurerHelper.getList(dp.keyCommandListConfig).add(dkcc2); super.serializeTest(DynamicProperty.class, dp); } @Override void assertSame(DynamicProperty dp1, DynamicProperty dp2) { assertEquals(dp1.key, dp2.key); assertEquals(dp1.numeric, dp2.numeric); assertEquals(dp1.minValue, dp2.minValue); assertEquals(dp1.maxValue, dp2.maxValue); assertEquals(dp1.wrap, dp2.wrap); assertEquals(dp1.numeric, dp2.numeric); assertEquals(dp1.numeric, dp2.numeric); assertEquals(dp1.keyCommandListConfig, dp2.keyCommandListConfig); } }