Use Maps.equals, test streaming Integer values in a Map
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@6210 542714f4-19e9-0310-aa3c-eee0fc999fb1
This commit is contained in:
@@ -34,6 +34,7 @@ import com.threerings.util.Map;
|
|||||||
import com.threerings.io.streamers.MapStreamer;
|
import com.threerings.io.streamers.MapStreamer;
|
||||||
// GENERATED PREAMBLE END
|
// GENERATED PREAMBLE END
|
||||||
|
|
||||||
|
import com.threerings.util.Integer;
|
||||||
import com.threerings.util.Maps;
|
import com.threerings.util.Maps;
|
||||||
import com.threerings.util.Util;
|
import com.threerings.util.Util;
|
||||||
|
|
||||||
@@ -73,25 +74,10 @@ public class ASStreamableSubset extends SimpleStreamableObject
|
|||||||
stringMap.put("one", "1");
|
stringMap.put("one", "1");
|
||||||
stringMap.put("two", "2");
|
stringMap.put("two", "2");
|
||||||
stringMap.put("three", "3");
|
stringMap.put("three", "3");
|
||||||
}
|
stringIntMap = Maps.newMapOf(String);
|
||||||
|
stringIntMap.put("one", Integer.valueOf(1));
|
||||||
protected static function mapEquals (m1 :Map, m2 :Map) :Boolean
|
stringIntMap.put("two", Integer.valueOf(2));
|
||||||
{
|
stringIntMap.put("three", Integer.valueOf(3));
|
||||||
if (m1 == m2) {
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
if (m1 == null) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
if (m1.size() != m2.size()) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
for each (var key :Object in m1.keys()) {
|
|
||||||
if (!m2.containsKey(key) || !Util.equals(m1.get(key), m2.get(key))) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public function equals (o :ASStreamableSubset) :Boolean
|
public function equals (o :ASStreamableSubset) :Boolean
|
||||||
@@ -103,8 +89,8 @@ public class ASStreamableSubset extends SimpleStreamableObject
|
|||||||
Util.equals(ints, o.ints) && Util.equals(nullBools, o.nullBools) &&
|
Util.equals(ints, o.ints) && Util.equals(nullBools, o.nullBools) &&
|
||||||
Util.equals(nullBytes, o.nullBytes) && Util.equals(nullInts, o.nullInts) &&
|
Util.equals(nullBytes, o.nullBytes) && Util.equals(nullInts, o.nullInts) &&
|
||||||
Util.equals(strings, o.strings) && Util.equals(nullStrings, o.nullStrings) &&
|
Util.equals(strings, o.strings) && Util.equals(nullStrings, o.nullStrings) &&
|
||||||
mapEquals(stringMap, o.stringMap) &&
|
Maps.equals(stringMap, o.stringMap) && Maps.equals(stringIntMap, o.stringIntMap)
|
||||||
mapEquals(nullStringMap, o.nullStringMap);
|
Maps.equals(nullStringMap, o.nullStringMap);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -128,6 +114,7 @@ public class ASStreamableSubset extends SimpleStreamableObject
|
|||||||
public var strings :TypedArray;
|
public var strings :TypedArray;
|
||||||
public var nullStrings :TypedArray;
|
public var nullStrings :TypedArray;
|
||||||
public var stringMap :Map;
|
public var stringMap :Map;
|
||||||
|
public var stringIntMap :Map;
|
||||||
public var nullStringMap :Map;
|
public var nullStringMap :Map;
|
||||||
|
|
||||||
override public function readObject (ins :ObjectInputStream) :void
|
override public function readObject (ins :ObjectInputStream) :void
|
||||||
@@ -152,6 +139,7 @@ public class ASStreamableSubset extends SimpleStreamableObject
|
|||||||
strings = ins.readField(ArrayStreamer.INSTANCE);
|
strings = ins.readField(ArrayStreamer.INSTANCE);
|
||||||
nullStrings = ins.readField(ArrayStreamer.INSTANCE);
|
nullStrings = ins.readField(ArrayStreamer.INSTANCE);
|
||||||
stringMap = ins.readField(MapStreamer.INSTANCE);
|
stringMap = ins.readField(MapStreamer.INSTANCE);
|
||||||
|
stringIntMap = ins.readField(MapStreamer.INSTANCE);
|
||||||
nullStringMap = ins.readField(MapStreamer.INSTANCE);
|
nullStringMap = ins.readField(MapStreamer.INSTANCE);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -177,6 +165,7 @@ public class ASStreamableSubset extends SimpleStreamableObject
|
|||||||
out.writeField(strings, ArrayStreamer.INSTANCE);
|
out.writeField(strings, ArrayStreamer.INSTANCE);
|
||||||
out.writeField(nullStrings, ArrayStreamer.INSTANCE);
|
out.writeField(nullStrings, ArrayStreamer.INSTANCE);
|
||||||
out.writeField(stringMap, MapStreamer.INSTANCE);
|
out.writeField(stringMap, MapStreamer.INSTANCE);
|
||||||
|
out.writeField(stringIntMap, MapStreamer.INSTANCE);
|
||||||
out.writeField(nullStringMap, MapStreamer.INSTANCE);
|
out.writeField(nullStringMap, MapStreamer.INSTANCE);
|
||||||
}
|
}
|
||||||
// GENERATED STREAMING END
|
// GENERATED STREAMING END
|
||||||
|
|||||||
@@ -57,7 +57,8 @@ public class StreamableTest extends TestCase
|
|||||||
"0003010001010000000301020301000000030000000100000002000000030000000100000003fffe" +
|
"0003010001010000000301020301000000030000000100000002000000030000000100000003fffe" +
|
||||||
"00106a6176612e6c616e672e537472696e6700036f6e650002000374776f00020005746872656500" +
|
"00106a6176612e6c616e672e537472696e6700036f6e650002000374776f00020005746872656500" +
|
||||||
"01000000030002000374776f0002000132000200036f6e6500020001310002000574687265650002" +
|
"01000000030002000374776f0002000132000200036f6e6500020001310002000574687265650002" +
|
||||||
"00013300");
|
"00013301000000030002000374776ffffd00116a6176612e6c616e672e496e746567657200000002" +
|
||||||
|
"000200036f6e6500030000000100020005746872656500030000000300");
|
||||||
var input:ObjectInputStream = new ObjectInputStream(javaData);
|
var input:ObjectInputStream = new ObjectInputStream(javaData);
|
||||||
var read :ASStreamableSubset = input.readObject(ASStreamableSubset);
|
var read :ASStreamableSubset = input.readObject(ASStreamableSubset);
|
||||||
assertTrue(sub.equals(read));
|
assertTrue(sub.equals(read));
|
||||||
|
|||||||
@@ -55,6 +55,7 @@ public class ASStreamableSubset extends SimpleStreamableObject
|
|||||||
public List<String> nullStrings;
|
public List<String> nullStrings;
|
||||||
|
|
||||||
public Map<String, String> stringMap = Mapping.of("one", "1", "two", "2", "three", "3");
|
public Map<String, String> stringMap = Mapping.of("one", "1", "two", "2", "three", "3");
|
||||||
|
public Map<String, Integer> stringIntMap = Mapping.of("one", 1, "two", 2, "three", 3);
|
||||||
public Map<String, String> nullStringMap;
|
public Map<String, String> nullStringMap;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -84,7 +85,7 @@ public class ASStreamableSubset extends SimpleStreamableObject
|
|||||||
Objects.equal(strings, ow.strings) && Objects.equal(nullStrings, ow.nullStrings)
|
Objects.equal(strings, ow.strings) && Objects.equal(nullStrings, ow.nullStrings)
|
||||||
&&
|
&&
|
||||||
|
|
||||||
Objects.equal(stringMap, ow.stringMap)
|
Objects.equal(stringMap, ow.stringMap) && Objects.equal(stringIntMap, ow.stringIntMap)
|
||||||
&& Objects.equal(nullStringMap, ow.nullStringMap);
|
&& Objects.equal(nullStringMap, ow.nullStringMap);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user