/// <summary> /// Initializes the <see cref="HttpMessageBindingElement"/> from an /// <see cref="System.ServiceModel.HttpMessageBinding">HttpMessageBinding</see> instance. /// </summary> /// <param name="binding"> /// The <see cref="System.ServiceModel.HttpMessageBinding">HttpMessageBinding</see> instance from which /// the <see cref="HttpMessageBindingElement"/> will be initialized. /// </param> protected override void InitializeFrom(Binding binding) { base.InitializeFrom(binding); HttpMessageBinding httpMessageBinding = (HttpMessageBinding)binding; if (httpMessageBinding.HostNameComparisonMode != HttpTransportDefaults.HostNameComparisonModeDefault) { this.HostNameComparisonMode = httpMessageBinding.HostNameComparisonMode; } if (httpMessageBinding.MaxBufferSize != TransportDefaults.MaxBufferSize) { this.MaxBufferSize = httpMessageBinding.MaxBufferSize; } if (httpMessageBinding.MaxBufferPoolSize != TransportDefaults.MaxBufferPoolSize) { this.MaxBufferPoolSize = httpMessageBinding.MaxBufferPoolSize; } if (httpMessageBinding.MaxReceivedMessageSize != TransportDefaults.MaxReceivedMessageSize) { this.MaxReceivedMessageSize = httpMessageBinding.MaxReceivedMessageSize; } if (httpMessageBinding.TransferMode != HttpTransportDefaults.TransferModeDefault) { this.TransferMode = httpMessageBinding.TransferMode; } this.Security.InitializeFrom(httpMessageBinding.Security); }
public void HttpTransportBindingElement_ProxyAuthenticationScheme_Is_Anonymous_By_Default() { HttpMessageBinding binding = new HttpMessageBinding(); HttpTransportBindingElement transport = binding.CreateBindingElements().Find <HttpTransportBindingElement>(); Assert.AreEqual(AuthenticationSchemes.Anonymous, transport.ProxyAuthenticationScheme, "HttpTransportBindingElement.ProxyAuthenticationScheme should have been AuthenticationSchemes.Anonymous by default."); }
public void MaxReceivedMessageSize_Can_Be_Set() { HttpMessageBinding binding = new HttpMessageBinding(); binding.MaxReceivedMessageSize = 100; Assert.AreEqual(100, binding.MaxReceivedMessageSize, "HttpMessageBinding.MaxReceivedMessageSize should have been 100."); }
public void HttpsTransportBindingElement_RequireClientCertificate_Is_False_By_Default() { HttpMessageBinding binding = new HttpMessageBinding(HttpMessageBindingSecurityMode.Transport); HttpsTransportBindingElement transport = binding.CreateBindingElements().Find <HttpsTransportBindingElement>(); Assert.IsFalse(transport.RequireClientCertificate, "HttpsTransportBindingElement.RequireClientCertificate should have been 'false' by default."); }
public void HttpTransportBindingElement_Realm_Is_Empty_String_By_Default() { HttpMessageBinding binding = new HttpMessageBinding(); HttpTransportBindingElement transport = binding.CreateBindingElements().Find <HttpTransportBindingElement>(); Assert.AreEqual(string.Empty, transport.Realm, "HttpTransportBindingElement.Realm should have been an empty string by default."); }
public void Setting_MaxBufferSize_Configures_The_HttpTransportBindingElement() { HttpMessageBinding binding = new HttpMessageBinding(); binding.MaxBufferSize = 100; HttpTransportBindingElement transport = binding.CreateBindingElements().Find <HttpTransportBindingElement>(); Assert.AreEqual(100, transport.MaxBufferSize, "HttpTransportBindingElement.MaxBufferSize should have been 100."); }
public void Setting_HostNameComparisonMode_Configures_The_HttpsTransportBindingElement() { HttpMessageBinding binding = new HttpMessageBinding(HttpMessageBindingSecurityMode.Transport); binding.HostNameComparisonMode = HostNameComparisonMode.Exact; HttpsTransportBindingElement transport = binding.CreateBindingElements().Find <HttpsTransportBindingElement>(); Assert.AreEqual(HostNameComparisonMode.Exact, transport.HostNameComparisonMode, "HttpsTransportBindingElement.HostNameComparisonMode should have been HostNameComparisonMode.Exact."); }
public void Setting_MaxReceivedMessageSize_Configures_The_HttpsTransportBindingElement() { HttpMessageBinding binding = new HttpMessageBinding(HttpMessageBindingSecurityMode.Transport); binding.MaxReceivedMessageSize = 100; HttpsTransportBindingElement transport = binding.CreateBindingElements().Find <HttpsTransportBindingElement>(); Assert.AreEqual(100, transport.MaxReceivedMessageSize, "HttpsTransportBindingElement.MaxReceivedMessageSize should have been 100."); }
public void Setting_TransferMode_Configures_The_HttpsTransportBindingElement() { HttpMessageBinding binding = new HttpMessageBinding(HttpMessageBindingSecurityMode.Transport); binding.TransferMode = TransferMode.StreamedRequest; HttpsTransportBindingElement transport = binding.CreateBindingElements().Find <HttpsTransportBindingElement>(); Assert.AreEqual(TransferMode.StreamedRequest, transport.TransferMode, "HttpsTransportBindingElement.TransferMode should have been TransferMode.StreamedRequest."); }
public void Setting_Security_Transport_ProxyCredentialType_Configures_The_HttpTransportBindingElement() { HttpMessageBinding binding = new HttpMessageBinding(HttpMessageBindingSecurityMode.TransportCredentialOnly); binding.Security.Transport.ProxyCredentialType = HttpProxyCredentialType.Basic; HttpTransportBindingElement transport = binding.CreateBindingElements().Find <HttpTransportBindingElement>(); Assert.AreEqual(AuthenticationSchemes.Basic, transport.ProxyAuthenticationScheme, "HttpTransportBindingElement.ProxyAuthenticationScheme should have been AuthenticationSchemes.Basic."); }
public void Setting_Security_Transport_Realm_Configures_The_HttpTransportBindingElement() { HttpMessageBinding binding = new HttpMessageBinding(HttpMessageBindingSecurityMode.TransportCredentialOnly); binding.Security.Transport.Realm = "SomeRealm"; HttpTransportBindingElement transport = binding.CreateBindingElements().Find <HttpTransportBindingElement>(); Assert.AreEqual("SomeRealm", transport.Realm, "HttpTransportBindingElement.Realm should have been 'SomeRealm'."); }
public void Setting_Security_Transport_ClientCredentialType_Certificate_Configures_The_HttpsTransportBindingElement() { HttpMessageBinding binding = new HttpMessageBinding(HttpMessageBindingSecurityMode.Transport); binding.Security.Transport.ClientCredentialType = HttpClientCredentialType.Certificate; HttpsTransportBindingElement transport = binding.CreateBindingElements().Find <HttpsTransportBindingElement>(); Assert.IsTrue(transport.RequireClientCertificate, "HttpsTransportBindingElement.RequireClientCertificate should have been 'true'."); }
public void HttpMessageBinding_Throws_With_Null_ConfigurationName_Parameter() { ExceptionAssert.ThrowsArgumentNull( "The HttpMessageBinding should have thrown since the configurationName parameter was null.", "configurationName", () => { HttpMessageBinding binding = new HttpMessageBinding((string)null); }); }
public void Namespace_Can_Be_Set() { HttpMessageBinding binding = new HttpMessageBinding(); binding.Namespace = "http://SomeNamespace.org/"; Assert.AreEqual("http://SomeNamespace.org/", binding.Namespace, "HttpMessageBinding.Namespace should have been 'http://SomeNamespace.org/'."); binding.Namespace = string.Empty; Assert.AreEqual(string.Empty, binding.Namespace, "HttpMessageBinding.Namespace should have been an empty string."); }
public void Name_Can_Be_Set() { HttpMessageBinding binding = new HttpMessageBinding(); binding.Name = "SomeName"; Assert.AreEqual("SomeName", binding.Name, "HttpMessageBinding.Name should have been 'SomeName'."); binding.Name = " "; Assert.AreEqual(" ", binding.Name, "HttpMessageBinding.Name should have been ' '."); }
public void HostNameComparisonMode_Can_Be_Set() { HttpMessageBinding binding = new HttpMessageBinding(); binding.HostNameComparisonMode = HostNameComparisonMode.Exact; Assert.AreEqual(HostNameComparisonMode.Exact, binding.HostNameComparisonMode, "HttpMessageBinding.HostNameComparisonMode should have been HostNameComparisonMode.Exact."); binding.HostNameComparisonMode = HostNameComparisonMode.WeakWildcard; Assert.AreEqual(HostNameComparisonMode.WeakWildcard, binding.HostNameComparisonMode, "HttpMessageBinding.HostNameComparisonMode should have been HostNameComparisonMode.WeakWildcard."); }
public void HttpMessageBinding_Throws_With_Invalid_HttpMessageBindingSecurityMode_Parameter() { ExceptionAssert.Throws( typeof(System.ComponentModel.InvalidEnumArgumentException), "The HttpMessageBinding should have thrown since HttpMessageBindingSecurityMode is not a valid value.", () => { HttpMessageBinding binding = new HttpMessageBinding((HttpMessageBindingSecurityMode)99); }); }
public void CreateBindingElements_Contains_HttpTransportBindingElement_And_HttpMessageEncodingBindingElement_By_Default() { HttpMessageBinding binding = new HttpMessageBinding(); HttpTransportBindingElement transport = binding.CreateBindingElements().Find <HttpTransportBindingElement>(); Assert.IsNotNull(transport, "The HttpMessageBinding.CreateBindingElements should have returned a collection with HttpTransportBindingElement."); HttpMessageEncodingBindingElement encoder = binding.CreateBindingElements().Find <HttpMessageEncodingBindingElement>(); Assert.IsNotNull(encoder, "The HttpMessageBinding.CreateBindingElements should have returned a collection with HttpMessageEncodingBindingElement."); }
public void CreateBindingElements_Contains_HttpTransportBindingElement_And_HttpMessageEncodingBindingElement_With_CredentialOnly_Security_Mode() { HttpMessageBinding binding = new HttpMessageBinding(HttpMessageBindingSecurityMode.TransportCredentialOnly); HttpTransportBindingElement transport = binding.CreateBindingElements().Find <HttpTransportBindingElement>(); Assert.IsNotNull(transport, "The HttpMessageBinding.CreateBindingElements should have returned a collection with HttpTransportBindingElement."); HttpMessageEncodingBindingElement encoder = binding.CreateBindingElements().Find <HttpMessageEncodingBindingElement>(); Assert.IsNotNull(encoder, "The HttpMessageBinding.CreateBindingElements should have returned a collection with HttpMessageEncodingBindingElement."); }
public void Setting_Name_To_Null_Throws() { HttpMessageBinding binding = new HttpMessageBinding(); ExceptionAssert.Throws( typeof(ArgumentException), "Setting HttpMessageBinding.Name to null should have thrown.", () => { binding.Name = null; }); }
public void Setting_Name_Empty_String_Throws() { HttpMessageBinding binding = new HttpMessageBinding(); ExceptionAssert.Throws( typeof(ArgumentException), "Setting HttpMessageBinding.Name to empty string should have thrown.", () => { binding.Name = string.Empty; }); }
public void Setting_Namespace_To_Null_Throws() { HttpMessageBinding binding = new HttpMessageBinding(); ExceptionAssert.ThrowsArgumentNull( "Setting HttpMessageBinding.Namespace to null should have thrown.", "value", () => { binding.Namespace = null; }); }
public void HostNameComparisonMode_Throws_If_Set_To_Invalid_Value() { HttpMessageBinding binding = new HttpMessageBinding(); ExceptionAssert.Throws( typeof(System.ComponentModel.InvalidEnumArgumentException), "The HttpMessageBinding should have thrown since HostNameComparisonMode is not a valid value.", () => { binding.HostNameComparisonMode = (HostNameComparisonMode)99; }); }
public void TransferMode_Can_Be_Set() { HttpMessageBinding binding = new HttpMessageBinding(); binding.TransferMode = TransferMode.Streamed; Assert.AreEqual(TransferMode.Streamed, binding.TransferMode, "HttpMessageBinding.TransferMode should have been TransferMode.Streamed."); binding.TransferMode = TransferMode.StreamedRequest; Assert.AreEqual(TransferMode.StreamedRequest, binding.TransferMode, "HttpMessageBinding.TransferMode should have been TransferMode.StreamedRequest."); binding.TransferMode = TransferMode.StreamedResponse; Assert.AreEqual(TransferMode.StreamedResponse, binding.TransferMode, "HttpMessageBinding.TransferMode should have been TransferMode.StreamedResponse."); }
public void Security_Throws_If_Set_To_Null() { HttpMessageBinding binding = new HttpMessageBinding(); Assert.IsNotNull(binding.Security, "HttpMessageBinding.Security should never by null."); ExceptionAssert.ThrowsArgumentNull( "HttpMessageBinding.Security should have thrown when set to null.", "value", () => { binding.Security = null; }); }
public void CreateBindingElements_Count_Is_Always_Two() { HttpMessageBinding binding = new HttpMessageBinding(); Assert.AreEqual(2, binding.CreateBindingElements().Count, "The HttpMessageBinding should always have two binding elements."); HttpMessageBinding bindingWithSecurity = new HttpMessageBinding(HttpMessageBindingSecurityMode.Transport); Assert.AreEqual(2, bindingWithSecurity.CreateBindingElements().Count, "The HttpMessageBinding should always have two binding elements."); HttpMessageBinding bindingWithSecurity2 = new HttpMessageBinding(HttpMessageBindingSecurityMode.TransportCredentialOnly); Assert.AreEqual(2, bindingWithSecurity2.CreateBindingElements().Count, "The HttpMessageBinding should always have two binding elements."); }
public void HttpTransportBindingElement_ManualAddressing_Is_True() { HttpMessageBinding binding = new HttpMessageBinding(); HttpTransportBindingElement transport = binding.CreateBindingElements().Find <HttpTransportBindingElement>(); Assert.IsTrue(transport.ManualAddressing, "HttpTransportBindingElement.ManualAddressing should have been 'true'."); binding.Security.Mode = HttpMessageBindingSecurityMode.Transport; HttpsTransportBindingElement transport2 = binding.CreateBindingElements().Find <HttpsTransportBindingElement>(); Assert.IsTrue(transport2.ManualAddressing, "HttpsTransportBindingElement.ManualAddressing should have been 'true'."); binding.Security.Mode = HttpMessageBindingSecurityMode.TransportCredentialOnly; HttpTransportBindingElement transport3 = binding.CreateBindingElements().Find <HttpTransportBindingElement>(); Assert.IsTrue(transport3.ManualAddressing, "HttpTransportBindingElement.ManualAddressing should have been 'true'."); }
/// <summary> /// Applies the configuration of the the <see cref="HttpMessageBindingElement"/> to the given /// <see cref="System.ServiceModel.HttpMessageBinding">HttpMessageBinding</see> instance. /// </summary> /// <param name="binding">The <see cref="System.ServiceModel.HttpMessageBinding">HttpMessageBinding</see> /// instance to which the <see cref="HttpMessageBindingElement"/> configuration will be applied. /// </param> protected override void OnApplyConfiguration(Binding binding) { HttpMessageBinding httpMessageBinding = (HttpMessageBinding)binding; httpMessageBinding.HostNameComparisonMode = this.HostNameComparisonMode; httpMessageBinding.MaxBufferPoolSize = this.MaxBufferPoolSize; httpMessageBinding.MaxReceivedMessageSize = this.MaxReceivedMessageSize; httpMessageBinding.TransferMode = this.TransferMode; PropertyInformationCollection propertyInfo = this.ElementInformation.Properties; if (propertyInfo[MaxBufferSizeString].ValueOrigin != PropertyValueOrigin.Default) { httpMessageBinding.MaxBufferSize = this.MaxBufferSize; } this.Security.ApplyConfiguration(httpMessageBinding.Security); }
public void HostNameComparisonMode_Is_StrongWildcard_By_Default() { HttpMessageBinding binding = new HttpMessageBinding(); Assert.AreEqual(HostNameComparisonMode.StrongWildcard, binding.HostNameComparisonMode, "HttpMessageBinding.HostNameComparisonMode should have been HostNameComparisonMode.StrongWildcard by default."); }
public void EnvelopeVersion_Is_Always_None() { HttpMessageBinding binding = new HttpMessageBinding(); Assert.AreEqual(EnvelopeVersion.None, binding.EnvelopeVersion, "HttpMessageBinding.EnvelopeVersion should always be EnvelopeVersion.None."); }