Пример #1
0
        public void CreateInstance_Null_Request_Throws()
        {
            EmptyService         instance = new EmptyService();
            InstanceContext      context  = new InstanceContext(instance);
            HttpInstanceProvider provider = new SHttpInstanceProvider();

            ExceptionAssert.ThrowsArgumentNull("request", () => provider.GetInstance(context, null));
        }
Пример #2
0
        public void ReleaseInstance_HttpInstanceProvider_Null_Instance_Throws()
        {
            EmptyService         instance = new EmptyService();
            InstanceContext      context  = new InstanceContext(instance);
            HttpInstanceProvider provider = new SHttpInstanceProvider();

            ExceptionAssert.ThrowsArgumentNull("instance", () => provider.ReleaseInstance(context, null));
        }
Пример #3
0
        public void CreateInstance_Null_InstanceContext_Throws()
        {
            EmptyService      instance = new EmptyService();
            InstanceContext   context  = null;
            IInstanceProvider provider = new SHttpInstanceProvider();
            Message           message  = new HttpRequestMessage().ToMessage();

            ExceptionAssert.ThrowsArgumentNull("instanceContext", () => provider.GetInstance(context, message));
        }
Пример #4
0
        public void CreateInstance_Null_Message_Throws()
        {
            EmptyService      instance = new EmptyService();
            InstanceContext   context  = new InstanceContext(instance);
            IInstanceProvider provider = new SHttpInstanceProvider();
            Message           message  = null;

            ExceptionAssert.ThrowsArgumentNull("message", () => provider.GetInstance(context, message));
        }
Пример #5
0
        public void CreateInstance_Non_Http_Message_Throws()
        {
            EmptyService      instance = new EmptyService();
            InstanceContext   context  = new InstanceContext(instance);
            IInstanceProvider provider = new SHttpInstanceProvider();
            Message           message  = Message.CreateMessage(MessageVersion.None, "notUsed");

            ExceptionAssert.Throws <InvalidOperationException>(
                SR.HttpInstanceProviderNullRequest(typeof(SHttpInstanceProvider).Name, typeof(HttpRequestMessage).Name, "GetInstance"),
                () => provider.GetInstance(context, message));
        }
Пример #6
0
        public void CreateInstance_Allows_Null_Instance()
        {
            EmptyService instance = new EmptyService();
            InstanceContext context = new InstanceContext(instance);
            Message message = new HttpRequestMessage().ToMessage();

            SHttpInstanceProvider provider = new SHttpInstanceProvider();
            provider.OnGetInstanceInstanceContextHttpRequestMessage = (ctx, msg) => { return null; };

            object returnedInstance = ((IInstanceProvider)provider).GetInstance(context, message);
            Assert.IsNull(returnedInstance, "Instance provider should have returned a null instance");
        }
Пример #7
0
        public void CreateInstance_Returns_Custom_Instance()
        {
            EmptyService          instance = new EmptyService();
            InstanceContext       context  = new InstanceContext(instance);
            Message               message  = new HttpRequestMessage().ToMessage();
            SHttpInstanceProvider provider = new SHttpInstanceProvider();

            provider.OnGetInstanceInstanceContextHttpRequestMessage = (ctx, msg) => instance;

            object returnedInstance = ((IInstanceProvider)provider).GetInstance(context, message);

            Assert.AreEqual(instance, returnedInstance, "Instance provider should have returned the same instance we provided to the mock");
        }
Пример #8
0
        public void CreateInstance_Allows_Null_Instance()
        {
            EmptyService    instance = new EmptyService();
            InstanceContext context  = new InstanceContext(instance);
            Message         message  = new HttpRequestMessage().ToMessage();

            SHttpInstanceProvider provider = new SHttpInstanceProvider();

            provider.OnGetInstanceInstanceContextHttpRequestMessage = (ctx, msg) => { return(null); };

            object returnedInstance = ((IInstanceProvider)provider).GetInstance(context, message);

            Assert.IsNull(returnedInstance, "Instance provider should have returned a null instance");
        }
Пример #9
0
        public void CreateInstance_Simple_Calls_OnCreateInstance()
        {
            EmptyService    instance = new EmptyService();
            InstanceContext context  = new InstanceContext(instance);

            InstanceContext       seenContext = null;
            SHttpInstanceProvider provider    = new SHttpInstanceProvider();

            provider.OnGetInstanceInstanceContext =
                (ic) =>
            {
                seenContext = ic;
                return("hello");
            };

            object actualInstance = provider.GetInstance(context);

            Assert.AreSame(context, seenContext, "Did not receive context in OnCreateInstance");
            Assert.AreEqual("hello", actualInstance, "Did not pass back instance created");
        }
Пример #10
0
        public void ReleaseInstance_Calls_OnReleaseInstance()
        {
            EmptyService    instance = new EmptyService();
            InstanceContext context  = new InstanceContext(instance);

            InstanceContext       seenContext  = null;
            object                seenInstance = null;
            SHttpInstanceProvider provider     = new SHttpInstanceProvider();

            provider.OnReleaseInstanceInstanceContextObject =
                (ic, i) =>
            {
                seenContext  = ic;
                seenInstance = i;
            };

            provider.ReleaseInstance(context, instance);

            Assert.AreSame(context, seenContext, "Did not receive context in OnCreateInstance");
            Assert.AreSame(instance, seenInstance, "Did not pass back instance created");
        }
Пример #11
0
        public void CreateInstance_Calls_OnCreateInstance()
        {
            EmptyService instance = new EmptyService();
            InstanceContext context = new InstanceContext(instance);
            HttpRequestMessage requestMessage = new HttpRequestMessage();

            InstanceContext seenContext = null;
            HttpRequestMessage seenMessage = null;
            SHttpInstanceProvider provider = new SHttpInstanceProvider();
            provider.OnGetInstanceInstanceContextHttpRequestMessage =
                (ic, m) =>
                {
                    seenContext = ic;
                    seenMessage = m;
                    return "hello";
                };

            object actualInstance = provider.GetInstance(context, requestMessage);

            Assert.AreSame(context, seenContext, "Did not receive context in OnCreateInstance");
            Assert.AreSame(requestMessage, seenMessage, "Did not get Message");
            Assert.AreEqual("hello", actualInstance, "Did not pass back instance created");
        }
Пример #12
0
        public void CreateInstance_Calls_OnCreateInstance()
        {
            EmptyService       instance       = new EmptyService();
            InstanceContext    context        = new InstanceContext(instance);
            HttpRequestMessage requestMessage = new HttpRequestMessage();

            InstanceContext       seenContext = null;
            HttpRequestMessage    seenMessage = null;
            SHttpInstanceProvider provider    = new SHttpInstanceProvider();

            provider.OnGetInstanceInstanceContextHttpRequestMessage =
                (ic, m) =>
            {
                seenContext = ic;
                seenMessage = m;
                return("hello");
            };

            object actualInstance = provider.GetInstance(context, requestMessage);

            Assert.AreSame(context, seenContext, "Did not receive context in OnCreateInstance");
            Assert.AreSame(requestMessage, seenMessage, "Did not get Message");
            Assert.AreEqual("hello", actualInstance, "Did not pass back instance created");
        }
Пример #13
0
 public void CreateInstance_Null_InstanceContext_Throws()
 {
     EmptyService instance = new EmptyService();
     InstanceContext context = null;
     IInstanceProvider provider = new SHttpInstanceProvider();
     Message message = new HttpRequestMessage().ToMessage();
     ExceptionAssert.ThrowsArgumentNull("instanceContext", () => provider.GetInstance(context, message));
 }
Пример #14
0
 public void CreateInstance_Null_Request_Throws()
 {
     EmptyService instance = new EmptyService();
     InstanceContext context = new InstanceContext(instance);
     HttpInstanceProvider provider = new SHttpInstanceProvider();
     ExceptionAssert.ThrowsArgumentNull("request", () => provider.GetInstance(context, null));
 }
Пример #15
0
        public void CreateInstance_Returns_Custom_Instance()
        {
            EmptyService instance = new EmptyService();
            InstanceContext context = new InstanceContext(instance);
            Message message = new HttpRequestMessage().ToMessage();
            SHttpInstanceProvider provider = new SHttpInstanceProvider();
            provider.OnGetInstanceInstanceContextHttpRequestMessage = (ctx, msg) => instance;

            object returnedInstance = ((IInstanceProvider)provider).GetInstance(context, message);
            Assert.AreEqual(instance, returnedInstance, "Instance provider should have returned the same instance we provided to the mock");
        }
Пример #16
0
        public void CreateInstance_Simple_Calls_OnCreateInstance()
        {
            EmptyService instance = new EmptyService();
            InstanceContext context = new InstanceContext(instance);

            InstanceContext seenContext = null;
            SHttpInstanceProvider provider = new SHttpInstanceProvider();
            provider.OnGetInstanceInstanceContext =
                (ic) =>
                {
                    seenContext = ic;
                    return "hello";
                };

            object actualInstance = provider.GetInstance(context);

            Assert.AreSame(context, seenContext, "Did not receive context in OnCreateInstance");
            Assert.AreEqual("hello", actualInstance, "Did not pass back instance created");
        }
Пример #17
0
        public void ReleaseInstance_HttpInstanceProvider_Null_InstanceContext_Throws()
        {
            HttpInstanceProvider provider = new SHttpInstanceProvider();

            ExceptionAssert.ThrowsArgumentNull("instanceContext", () => provider.ReleaseInstance(null, "anInstance"));
        }
Пример #18
0
        public void CreateInstance_Simple_HttpInstanceProvider_Null_InstanceContext_Throws()
        {
            HttpInstanceProvider provider = new SHttpInstanceProvider();

            ExceptionAssert.ThrowsArgumentNull("instanceContext", () => provider.GetInstance(null));
        }
Пример #19
0
        public void ReleaseInstance_Calls_OnReleaseInstance()
        {
            EmptyService instance = new EmptyService();
            InstanceContext context = new InstanceContext(instance);

            InstanceContext seenContext = null;
            object seenInstance = null;
            SHttpInstanceProvider provider = new SHttpInstanceProvider();
            provider.OnReleaseInstanceInstanceContextObject =
                (ic, i) =>
                {
                    seenContext = ic;
                    seenInstance = i;
                };

            provider.ReleaseInstance(context, instance);

            Assert.AreSame(context, seenContext, "Did not receive context in OnCreateInstance");
            Assert.AreSame(instance, seenInstance, "Did not pass back instance created");
        }
Пример #20
0
 public void ReleaseInstance_HttpInstanceProvider_Null_InstanceContext_Throws()
 {
     HttpInstanceProvider provider = new SHttpInstanceProvider();
     ExceptionAssert.ThrowsArgumentNull("instanceContext", () => provider.ReleaseInstance(null, "anInstance"));
 }
Пример #21
0
 public void ReleaseInstance_HttpInstanceProvider_Null_Instance_Throws()
 {
     EmptyService instance = new EmptyService();
     InstanceContext context = new InstanceContext(instance);
     HttpInstanceProvider provider = new SHttpInstanceProvider();
     ExceptionAssert.ThrowsArgumentNull("instance", () => provider.ReleaseInstance(context, null));
 }
Пример #22
0
 public void CreateInstance_Null_Message_Throws()
 {
     EmptyService instance = new EmptyService();
     InstanceContext context = new InstanceContext(instance);
     IInstanceProvider provider = new SHttpInstanceProvider();
     Message message = null;
     ExceptionAssert.ThrowsArgumentNull("message", () => provider.GetInstance(context, message));
 }
Пример #23
0
 public void CreateInstance_Non_Http_Message_Throws()
 {
     EmptyService instance = new EmptyService();
     InstanceContext context = new InstanceContext(instance);
     IInstanceProvider provider = new SHttpInstanceProvider();
     Message message = Message.CreateMessage(MessageVersion.None, "notUsed");
     ExceptionAssert.Throws<InvalidOperationException>(
         SR.HttpInstanceProviderNullRequest(typeof(SHttpInstanceProvider).Name, typeof(HttpRequestMessage).Name, "GetInstance"),
         () =>provider.GetInstance(context, message));
 }
Пример #24
0
 public void CreateInstance_HttpInstanceProvider_Null_InstanceContext_Throws()
 {
     HttpInstanceProvider provider = new SHttpInstanceProvider();
     ExceptionAssert.ThrowsArgumentNull("instanceContext", () => provider.GetInstance(null, new HttpRequestMessage()));
 }