Exemple #1
0
        public void Can_store_and_get_stored_item_count()
        {
            var map = new IntHashMap <string>();

            map.AddOrUpdate(42, "1");
            map.AddOrUpdate(42 + 32 + 32, "3");

            Assert.AreEqual(2, map.Count);
        }
Exemple #2
0
        public void Can_update_a_stored_item_with_new_value()
        {
            var map = new IntHashMap <string>();

            map.AddOrUpdate(42, "1");
            map.AddOrUpdate(42, "3");

            Assert.AreEqual("3", map.GetValueOrDefault(42));
            Assert.AreEqual(1, map.Count);
        }
Exemple #3
0
 public PathFinder(IBlockAccess par1IBlockAccess, bool par2, bool par3, bool par4, bool par5)
 {
     Path                   = new Path();
     PointMap               = new IntHashMap();
     PathOptions            = new PathPoint[32];
     WorldMap               = par1IBlockAccess;
     IsWoddenDoorAllowed    = par2;
     IsMovementBlockAllowed = par3;
     IsPathingInWater       = par4;
     CanEntityDrown         = par5;
 }
Exemple #4
0
        public void Can_remove_the_stored_item()
        {
            var map = new IntHashMap <string>();

            map.AddOrUpdate(42, "1");
            map.AddOrUpdate(42 + 32, "2");
            map.AddOrUpdate(42 + 32 + 32, "3");

            map.Remove(42 + 32);

            Assert.AreEqual(2, map.Count);
            Assert.AreEqual("3", map.GetValueOrDefault(42 + 32 + 32));
        }
Exemple #5
0
        public void Can_add_key_with_0_hash_code()
        {
            var map = new IntHashMap <string>();

            map.AddOrUpdate(0, "aaa");
            map.AddOrUpdate(0 + 32, "2");
            map.AddOrUpdate(0 + 32 + 32, "3");

            string value;

            Assert.IsTrue(map.TryFind(0, out value));

            Assert.AreEqual("aaa", value);
        }
Exemple #6
0
        public void Can_remove_the_stored_item_twice()
        {
            var map = new IntHashMap <string>(2);

            map.AddOrUpdate(42, "1");
            map.AddOrUpdate(41, "41");
            map.AddOrUpdate(42 + 32, "2");
            map.AddOrUpdate(43, "43");
            map.AddOrUpdate(42 + 32 + 32, "3");

            // removing twice
            map.Remove(42 + 32);
            map.Remove(42 + 32);

            Assert.AreEqual(4, map.Count);
            Assert.AreEqual("3", map.GetValueOrDefault(42 + 32 + 32));
        }
Exemple #7
0
        public void Can_quickly_find_the_scattered_items_with_the_same_cache()
        {
            var map = new IntHashMap <string>();

            map.AddOrUpdate(42, "1");
            map.AddOrUpdate(43, "a");
            map.AddOrUpdate(42 + 32, "2");
            map.AddOrUpdate(45, "b");
            map.AddOrUpdate(46, "c");
            map.AddOrUpdate(42 + 32 + 32, "3");

            string value;

            Assert.IsTrue(map.TryFind(42 + 32, out value));
            Assert.AreEqual("2", value);

            Assert.IsTrue(map.TryFind(42 + 32 + 32, out value));
            Assert.AreEqual("3", value);
        }
Exemple #8
0
        public void Can_store_and_retrieve_value_from_map()
        {
            var map = new IntHashMap <string>();

            map.AddOrUpdate(42, "1");
            map.AddOrUpdate(42 + 32, "2");

            // interrupt the keys with ne key
            map.AddOrUpdate(43, "a");
            map.AddOrUpdate(43 + 32, "b");

            map.AddOrUpdate(42 + 32 + 32, "3");

            Assert.AreEqual("1", map.GetValueOrDefault(42));
            Assert.AreEqual("2", map.GetValueOrDefault(42 + 32));
            Assert.AreEqual("3", map.GetValueOrDefault(42 + 32 + 32));
            Assert.AreEqual(null, map.GetValueOrDefault(42 + 32 + 32 + 32));

            Assert.AreEqual("a", map.GetValueOrDefault(43));
        }