예제 #1
0
        public void RunProblem()
        {
            var map = new TimeMap();

            map.Set("foo", "bar", 1);
            var temp = map.Get("foo", 1);

            if (temp != "bar")
            {
                throw new Exception();
            }

            temp = map.Get("foo", 3);
            if (temp != "bar")
            {
                throw new Exception();
            }

            map.Set("foo", "bar2", 4);
            temp = map.Get("foo", 4);
            if (temp != "bar2")
            {
                throw new Exception();
            }

            temp = map.Get("foo", 5);
            if (temp != "bar2")
            {
                throw new Exception();
            }

            temp = map.Get("foo", 0);
        }
        static void Main(string[] args)
        {
            TimeMap tm = new TimeMap();

            tm.Set("love", "high", 10);
            tm.Set("love", "low", 20);

            Console.WriteLine(tm.Get("love", 5));
            Console.WriteLine(tm.Get("love", 10));
            Console.WriteLine(tm.Get("love", 15));
            Console.WriteLine(tm.Get("love", 20));
            Console.WriteLine(tm.Get("love", 25));

            Console.ReadKey();
        }
예제 #3
0
        public void TimeBasedKeyValueTests1()
        {
            TimeMap kv = new TimeMap();

            kv.Set("foo", "bar", 1);
            string val = kv.Get("foo", 1);

            Assert.Equal("bar", val);
            val = kv.Get("foo", 3);
            Assert.Equal("bar", val);
            kv.Set("foo", "bar2", 4);
            val = kv.Get("foo", 4);
            Assert.Equal("bar2", val);
            val = kv.Get("foo", 5);
            Assert.Equal("bar2", val);
        }
예제 #4
0
        public void TimeBasedKeyValueTests2()
        {
            TimeMap kv = new TimeMap();

            kv.Set("love", "high", 10);
            kv.Set("love", "low", 20);
            string val = kv.Get("love", 5);

            Assert.Equal("", val);
            val = kv.Get("love", 10);
            Assert.Equal("high", val);
            val = kv.Get("love", 15);
            Assert.Equal("high", val);
            val = kv.Get("love", 20);
            Assert.Equal("low", val);
            val = kv.Get("love", 25);
            Assert.Equal("low", val);
        }
예제 #5
0
        public void TestMethod1()
        {
            TimeMap kv = new TimeMap();

            kv.Set("foo", "bar", 1);
            var result = kv.Get("foo", 1);

            Assert.AreEqual(result, "bar");

            result = kv.Get("foo", 3);
            Assert.AreEqual(result, "bar");

            kv.Set("foo", "bar2", 4);
            result = kv.Get("foo", 4);
            Assert.AreEqual(result, "bar2");

            result = kv.Get("foo", 5);
            Assert.AreEqual(result, "bar2");
        }