public void ValidateDoesNotThrow()
        {
            var wha = new WcfWSHttpAdapter.Inbound(
                a => {
                a.Address      = new Uri("/dummy.svc", UriKind.Relative);
                a.Identity     = EndpointIdentityFactory.CreateSpnIdentity("service_spn");
                a.SecurityMode = SecurityMode.Message;
                a.TextEncoding = Encoding.Unicode;
            });

            Assert.That(() => ((ISupportValidation)wha).Validate(), Throws.Nothing);
        }
        public void SerializeToXml()
        {
            var wha = new WcfWSHttpAdapter.Inbound(
                a => {
                a.Address      = new Uri("/dummy.svc", UriKind.Relative);
                a.Identity     = EndpointIdentityFactory.CreateSpnIdentity("service_spn");
                a.SecurityMode = SecurityMode.Message;
                a.TextEncoding = Encoding.Unicode;
            });
            var xml = ((IAdapterBindingSerializerFactory)wha).GetAdapterBindingSerializer().Serialize();

            Assert.That(
                xml,
                Is.EqualTo(
                    "<CustomProps>" +
                    "<MaxReceivedMessageSize vt=\"3\">65535</MaxReceivedMessageSize>" +
                    "<MessageEncoding vt=\"8\">Text</MessageEncoding>" +
                    "<TextEncoding vt=\"8\">utf-16</TextEncoding>" +
                    "<EnableTransaction vt=\"11\">0</EnableTransaction>" +
                    "<SecurityMode vt=\"8\">Message</SecurityMode>" +
                    "<MessageClientCredentialType vt=\"8\">Windows</MessageClientCredentialType>" +
                    "<AlgorithmSuite vt=\"8\">Basic256</AlgorithmSuite>" +
                    "<NegotiateServiceCredential vt=\"11\">-1</NegotiateServiceCredential>" +
                    "<EstablishSecurityContext vt=\"11\">-1</EstablishSecurityContext>" +
                    "<TransportClientCredentialType vt=\"8\">Windows</TransportClientCredentialType>" +
                    "<UseSSO vt=\"11\">0</UseSSO>" +
                    "<MaxConcurrentCalls vt=\"3\">200</MaxConcurrentCalls>" +
                    "<InboundBodyLocation vt=\"8\">UseBodyElement</InboundBodyLocation>" +
                    "<InboundNodeEncoding vt=\"8\">Xml</InboundNodeEncoding>" +
                    "<OutboundBodyLocation vt=\"8\">UseBodyElement</OutboundBodyLocation>" +
                    "<OutboundXmlTemplate vt=\"8\">&lt;bts-msg-body xmlns=\"http://www.microsoft.com/schemas/bts2007\" encoding=\"xml\"/&gt;</OutboundXmlTemplate>" +
                    "<SuspendMessageOnFailure vt=\"11\">-1</SuspendMessageOnFailure>" +
                    "<IncludeExceptionDetailInFaults vt=\"11\">-1</IncludeExceptionDetailInFaults>" +
                    "<OpenTimeout vt=\"8\">00:01:00</OpenTimeout>" +
                    "<SendTimeout vt=\"8\">00:01:00</SendTimeout>" +
                    "<CloseTimeout vt=\"8\">00:01:00</CloseTimeout>" +
                    "<Identity vt=\"8\">&lt;identity&gt;\r\n  &lt;servicePrincipalName value=\"service_spn\" /&gt;\r\n&lt;/identity&gt;</Identity>" +
                    "</CustomProps>"));
        }