void BasicHttpBindingSecurityModeTransportPropertiesPropagated()
        {
            int    expectedMaxBufferSize          = 7654321;
            int    expectedMaxReceivedMessageSize = 87654321;
            string expectedScheme = "https";

            BasicHttpBinding binding = new BasicHttpBinding(BasicHttpSecurityMode.Transport);

            // Check the default values are as expected
            Assert.Equal(TransferMode.Buffered, binding.TransferMode);
            Assert.Equal(MessageVersion.Soap11, binding.MessageVersion);
            Assert.Equal(65536, binding.MaxReceivedMessageSize);
            Assert.Equal(65536, binding.MaxBufferSize);
            Assert.Equal(expectedScheme, binding.Scheme);

            binding.MaxBufferSize          = expectedMaxBufferSize;
            binding.MaxReceivedMessageSize = expectedMaxReceivedMessageSize;
            binding.TransferMode           = TransferMode.Streamed;

            BindingElementCollection    bindingElements = binding.CreateBindingElements();
            HttpTransportBindingElement htbe            = bindingElements.Find <HttpTransportBindingElement>();

            Assert.Equal("CoreWCF.Channels.HttpsTransportBindingElement", htbe.GetType().FullName);
            Assert.Equal(expectedMaxBufferSize, htbe.MaxBufferSize);
            Assert.Equal(expectedMaxReceivedMessageSize, htbe.MaxReceivedMessageSize);
            Assert.Equal(expectedScheme, htbe.Scheme);
            Assert.Equal(TransferMode.Streamed, htbe.TransferMode);
            MessageEncodingBindingElement mebe = bindingElements.Find <MessageEncodingBindingElement>();

            Assert.Equal("CoreWCF.Channels.TextMessageEncodingBindingElement", mebe.GetType().FullName);
            Assert.Equal(MessageVersion.Soap11, mebe.MessageVersion);
        }
Пример #2
0
        public void MessageEncoding()
        {
            BasicHttpBinding b = new BasicHttpBinding();

            foreach (BindingElement be in b.CreateBindingElements())
            {
                MessageEncodingBindingElement mbe =
                    be as MessageEncodingBindingElement;
                if (mbe != null)
                {
                    MessageEncoderFactory f = mbe.CreateMessageEncoderFactory();
                    MessageEncoder        e = f.Encoder;

                    Assert.AreEqual(typeof(TextMessageEncodingBindingElement), mbe.GetType(), "#1-1");
                    Assert.AreEqual(MessageVersion.Soap11, f.MessageVersion, "#2-1");
                    Assert.AreEqual("text/xml; charset=utf-8", e.ContentType, "#3-1");
                    Assert.AreEqual("text/xml", e.MediaType, "#3-2");
                    return;
                }
            }
            Assert.Fail("No message encodiing binding element.");
        }
Пример #3
0
        public void DefaultMessageEncoding()
        {
            WSHttpBinding b = new WSHttpBinding();

            foreach (BindingElement be in b.CreateBindingElements())
            {
                MessageEncodingBindingElement mbe =
                    be as MessageEncodingBindingElement;
                if (mbe == null)
                {
                    continue;
                }
                MessageEncoderFactory f = mbe.CreateMessageEncoderFactory();
                MessageEncoder        e = f.Encoder;

                Assert.AreEqual(typeof(TextMessageEncodingBindingElement), mbe.GetType(), "#1-1");
                Assert.AreEqual(MessageVersion.Default, f.MessageVersion, "#2-1");
                Assert.AreEqual("application/soap+xml; charset=utf-8", e.ContentType, "#3-1");
                Assert.AreEqual("application/soap+xml", e.MediaType, "#3-2");
                return;
            }
            Assert.Fail("No message encodiing binding element.");
        }