package jetbrains.mps.internal.collections.trove.test; /*Generated by MPS */ import jetbrains.mps.internalCollections.test.closures.Util_Test; import java.util.Map; import jetbrains.mps.internal.collections.runtime.MapSequence; import gnu.trove.decorator.TByteByteHashMapDecorator; import gnu.trove.TByteByteHashMap; import junit.framework.Assert; import gnu.trove.decorator.TByteObjectHashMapDecorator; import gnu.trove.TByteObjectHashMap; import gnu.trove.decorator.TDoubleDoubleHashMapDecorator; import gnu.trove.TDoubleDoubleHashMap; import gnu.trove.decorator.TObjectDoubleHashMapDecorator; import gnu.trove.TObjectDoubleHashMap; import gnu.trove.decorator.TDoubleObjectHashMapDecorator; import gnu.trove.TDoubleObjectHashMap; import jetbrains.mps.internal.collections.runtime.SetSequence; import jetbrains.mps.internal.collections.runtime.Sequence; import gnu.trove.decorator.TFloatFloatHashMapDecorator; import gnu.trove.TFloatFloatHashMap; import gnu.trove.decorator.TIntIntHashMapDecorator; import gnu.trove.TIntIntHashMap; import gnu.trove.decorator.TLongLongHashMapDecorator; import gnu.trove.TLongLongHashMap; import gnu.trove.decorator.TShortShortHashMapDecorator; import gnu.trove.TShortShortHashMap; public class PrimMap_Test extends Util_Test { public void test_byteByte() throws Exception { Map<Byte, Byte> mbb = MapSequence.fromMap(new TByteByteHashMapDecorator(new TByteByteHashMap())); MapSequence.fromMap(mbb).put((byte) 1, (byte) 2); Assert.assertSame(1, MapSequence.fromMap(mbb).count()); } public void test_byteObject() throws Exception { Map<Byte, Object> mbo = MapSequence.fromMap(new TByteObjectHashMapDecorator(new TByteObjectHashMap<Object>())); MapSequence.fromMap(mbo).put((byte) 255, this); Assert.assertSame(1, MapSequence.fromMap(mbo).count()); } public void test_doubleDouble() throws Exception { Map<Double, Double> mdd = MapSequence.fromMap(new TDoubleDoubleHashMapDecorator(new TDoubleDoubleHashMap())); Map<Double, Double> mdd2 = MapSequence.fromMap(new TObjectDoubleHashMapDecorator(new TObjectDoubleHashMap<Double>())); Map<Double, Double> mdd3 = MapSequence.fromMap(new TDoubleObjectHashMapDecorator(new TDoubleObjectHashMap<Double>())); double pi = 3.1415; double e = 2.71828; MapSequence.fromMap(mdd).put(pi, e); Assert.assertSame(1, MapSequence.fromMap(mdd).count()); MapSequence.fromMap(mdd2).putAll(mdd); Assert.assertEquals(mdd2, mdd); MapSequence.fromMap(mdd3).put(SetSequence.fromSet(MapSequence.fromMap(mdd).keySet()).first(), Sequence.fromIterable(MapSequence.fromMap(mdd).values()).first()); Assert.assertEquals(MapSequence.fromMap(mdd3).get(pi), MapSequence.fromMap(mdd).get(pi)); } public void test_floatFloat() throws Exception { Map<Float, Float> mff = MapSequence.fromMap(new TFloatFloatHashMapDecorator(new TFloatFloatHashMap())); MapSequence.fromMap(mff).put((float) 1.0, (float) 2.0); MapSequence.fromMap(mff).put((float) 2.0, (float) 1.0); this.assertIterableEqualsIgnoreOrder(MapSequence.fromMap(mff).keySet(), MapSequence.fromMap(mff).values()); } public void test_intInt() throws Exception { Map<Integer, Integer> mii = MapSequence.fromMap(new TIntIntHashMapDecorator(new TIntIntHashMap())); for (int x = 0; x < 1 << 8; x++) { for (int y = 0; y < 1 << 8; y++) { MapSequence.fromMap(mii).put((y << 8) + x, x * y); } } Assert.assertEquals((Integer) (1 << 16), (Integer) MapSequence.fromMap(mii).count()); Assert.assertEquals((Integer) (42 * 13), (Integer) MapSequence.fromMap(mii).get((42 << 8) + 13)); Assert.assertEquals((Integer) (42 * 13), (Integer) MapSequence.fromMap(mii).get((13 << 8) + 42)); } public void test_longLong() throws Exception { Map<Long, Long> mll = MapSequence.fromMap(new TLongLongHashMapDecorator(new TLongLongHashMap())); long bln = 1000000000L; long trln = 1000000000000L; MapSequence.fromMap(mll).put(bln, trln); Assert.assertEquals((Long) MapSequence.fromMap(mll).get(bln), (Long) trln); } public void test_shortShort() throws Exception { Map<Short, Short> mss = MapSequence.fromMap(new TShortShortHashMapDecorator(new TShortShortHashMap())); MapSequence.fromMap(mss).put((short) 2, (short) 1); Assert.assertSame((short) 1, MapSequence.fromMap(mss).get((short) 2)); } public PrimMap_Test() { } }