public void Test_MixedTypesCanBeCached()
        {
            var cache = new MvxNavigationCache();

            SimpleTest(cache, "a", 1, 1);
            SimpleTest(cache, "b", 1.0, 1.0);
            SimpleTest(cache, "c", 1.0f, 1.0f);
            SimpleTest(cache, "d", "hello", "hello");
            var obj = new TestObject();

            SimpleTest(cache, "e", obj, obj);
        }
        public void Test_CacheCanRemoveItem()
        {
            var cache = new MvxNavigationCache();

            cache.AddValue("e", 0);
            cache.AddValue("f", 0);
            cache.AddValue("g", 0);
            cache.AddValue("h", 0);

            Assert.True(cache.Contains("e"));
            Assert.True(cache.Contains("f"));
            Assert.True(cache.Contains("g"));
            Assert.True(cache.Contains("h"));

            cache.Remove("g");

            Assert.False(cache.Contains("g"));
            Assert.True(cache.Contains("e"));
            Assert.True(cache.Contains("f"));
            Assert.True(cache.Contains("h"));
        }
        public void Test_CacheCanClear()
        {
            var cache = new MvxNavigationCache();

            cache.AddValue("a", 0);
            cache.AddValue("b", 0);
            cache.AddValue("c", 0);
            cache.AddValue("d", 0);

            Assert.True(cache.Contains("a"));
            Assert.True(cache.Contains("b"));
            Assert.True(cache.Contains("c"));
            Assert.True(cache.Contains("d"));

            cache.Clear();

            Assert.False(cache.Contains("a"));
            Assert.False(cache.Contains("b"));
            Assert.False(cache.Contains("c"));
            Assert.False(cache.Contains("d"));
        }