示例#1
0
        public void testPutAndGet()
        {
            IDictionary <string, string> map = new FastMap <String, String>();

            Assert.IsNull(map.get("foo"));
            map.put("foo", "bar");
            Assert.AreEqual("bar", map.get("foo"));
        }
示例#2
0
        public void testGrow()
        {
            IDictionary <String, String> map = new FastMap <String, String>(1, FastMap.NO_MAX_SIZE);

            map.put("foo", "bar");
            map.put("baz", "bang");
            Assert.AreEqual("bar", map.get("foo"));
            Assert.AreEqual("bang", map.get("baz"));
        }
示例#3
0
        public void testRehash()
        {
            FastMap <String, String> map = buildTestFastMap();

            map.remove("foo");
            map.rehash();
            Assert.IsNull(map.get("foo"));
            Assert.AreEqual("bang", map.get("baz"));
        }
示例#4
0
        public void testMaxSize()
        {
            IDictionary <String, String> map = new FastMap <String, String>(1, 1);

            map.put("foo", "bar");
            Assert.AreEqual(1, map.Count);
            map.put("baz", "bang");
            Assert.AreEqual(1, map.Count);
            Assert.IsNull(map.get("foo"));
            map.put("baz", "buzz");
            Assert.AreEqual(1, map.Count);
            Assert.AreEqual("buzz", map.get("baz"));
        }
示例#5
0
        public void testNull1()
        {
            IDictionary <String, String> map = new FastMap <String, String>();

            Assert.IsNull(map.get(null));
            map.put(null, "bar");
        }
示例#6
0
        public void testVersusHashMap()
        {
            IDictionary <Integer, String> actual   = new FastMap <Integer, String>(1, 1000000);
            IDictionary <Integer, String> expected = Maps.newHashMapWithExpectedSize(1000000);
            Random r = RandomUtils.getRandom();

            for (int i = 0; i < 1000000; i++)
            {
                double  d   = r.nextDouble();
                Integer key = r.nextInt(100);
                if (d < 0.4)
                {
                    Assert.AreEqual(expected.get(key), actual.get(key));
                }
                else
                {
                    if (d < 0.7)
                    {
                        Assert.AreEqual(expected.put(key, "foo"), actual.put(key, "foo"));
                    }
                    else
                    {
                        Assert.AreEqual(expected.remove(key), actual.remove(key));
                    }
                    Assert.AreEqual(expected.Count, actual.Count);
                    Assert.AreEqual(expected.isEmpty(), actual.isEmpty());
                }
            }
        }
示例#7
0
 public void testClear() {
   IDictionary<String, String> map = new FastMap<String, String>();
   map.put("foo", "bar");
   map.clear();
   Assert.AreEqual(0, map.Count);
   Assert.True(map.isEmpty());
   Assert.IsNull(map.get("foo"));
 }
示例#8
0
        public void testClear()
        {
            IDictionary <String, String> map = new FastMap <String, String>();

            map.put("foo", "bar");
            map.clear();
            Assert.AreEqual(0, map.Count);
            Assert.True(map.isEmpty());
            Assert.IsNull(map.get("foo"));
        }
示例#9
0
 public void testNull1() {
   IDictionary<String, String> map = new FastMap<String, String>();
   Assert.IsNull(map.get(null));
   map.put(null, "bar");
 }
示例#10
0
 public void testPutAndGet() {
   IDictionary<string, string> map = new FastMap<String, String>();
   Assert.IsNull(map.get("foo"));
   map.put("foo", "bar");
   Assert.AreEqual("bar", map.get("foo"));
 }
示例#11
0
 public void testMaxSize() {
   IDictionary<String, String> map = new FastMap<String, String>(1, 1);
   map.put("foo", "bar");
   Assert.AreEqual(1, map.Count);
   map.put("baz", "bang");
   Assert.AreEqual(1, map.Count);
   Assert.IsNull(map.get("foo"));
   map.put("baz", "buzz");
   Assert.AreEqual(1, map.Count);
   Assert.AreEqual("buzz", map.get("baz"));
 }
示例#12
0
 public void testVersusHashMap() {
   IDictionary<Integer, String> actual = new FastMap<Integer, String>(1, 1000000);
   IDictionary<Integer, String> expected = Maps.newHashMapWithExpectedSize(1000000);
   Random r = RandomUtils.getRandom();
   for (int i = 0; i < 1000000; i++) {
     double d = r.nextDouble();
     Integer key = r.nextInt(100);
     if (d < 0.4) {
       Assert.AreEqual(expected.get(key), actual.get(key));
     } else {
       if (d < 0.7) {
         Assert.AreEqual(expected.put(key, "foo"), actual.put(key, "foo"));
       } else {
         Assert.AreEqual(expected.remove(key), actual.remove(key));
       }
       Assert.AreEqual(expected.Count, actual.Count);
       Assert.AreEqual(expected.isEmpty(), actual.isEmpty());
     }
   }
 }
示例#13
0
 public void testGrow() {
   IDictionary<String, String> map = new FastMap<String, String>(1, FastMap.NO_MAX_SIZE);
   map.put("foo", "bar");
   map.put("baz", "bang");
   Assert.AreEqual("bar", map.get("foo"));
   Assert.AreEqual("bang", map.get("baz"));
 }