public void ResolverShouldThrowExceptionIfMethodIsAlreadyRegisteredRewriteFalse()
        {
            const string name     = "name";
            var          source   = new BindingResourceMethod((list, objects, c) => objects[0], typeof(object));
            var          resolver = CreateBindingResourceResolver();

            resolver.AddMethod(name, source, false);
            ShouldThrow(() => resolver.AddMethod(name, source, false));
        }
        public void ResolverShouldRegisterAndResolveMethod()
        {
            const string name     = "name";
            var          source   = new BindingResourceMethod((list, objects, c) => objects[0], typeof(object));
            var          resolver = CreateBindingResourceResolver();

            resolver.ResolveMethod(name, EmptyContext, false).ShouldBeNull();
            resolver.AddMethod(name, source, true);
            resolver.ResolveMethod(name, EmptyContext, true).ShouldEqual(source);
        }
        public void ResolverShouldThrowExceptionIfMethodIsAlreadyRegisteredRewriteTrue()
        {
            const string name     = "name";
            var          source   = new BindingResourceMethod((list, objects, c) => objects[0], typeof(object));
            var          source2  = new BindingResourceMethod((list, objects, c) => objects[0], typeof(object));
            var          resolver = CreateBindingResourceResolver();

            resolver.AddMethod(name, source, true);
            resolver.AddMethod(name, source2, true);
            resolver.ResolveMethod(name, EmptyContext, true).ShouldEqual(source2);
        }