Example #1
0
        public override Type ResolveType(string id)
        {
            Type result = null;

            if (FallbackFirst && AllowFallback)
            {
                result = FallbackResolver.ResolveType(id);
                if (result != null)
                {
                    return(result);
                }
            }

            if (RegisteredTypes.ContainsKey(id))
            {
                result = RegisteredTypes[id];
            }

            if (!FallbackFirst && AllowFallback && result == null)
            {
                result = FallbackResolver.ResolveType(id);
            }

            return(result);
        }
Example #2
0
        public void ResolveTypeFine()
        {
            SimpleTypeResolver r = new SimpleTypeResolver();

            Assert.AreEqual(typeof(string), r.ResolveType("string"), "#1");
            Assert.AreEqual(typeof(double), r.ResolveType("number"), "#2");
            Assert.AreEqual(typeof(bool), r.ResolveType("boolean"), "#3");
            Assert.AreEqual(typeof(void), r.ResolveType("null"), "#4");
            Assert.AreEqual(typeof(Array), r.ResolveType("array"), "#5");
            Assert.AreEqual(typeof(object), r.ResolveType("object"), "#6");
        }