public void ShouldRoundTripAttributeService()
        {
            var descriptor = new AttributeServiceDescriptor();
            var attributeServiceEndpoint = new EndpointReferenceCollection();

            attributeServiceEndpoint.Add(new EndpointReference {
                Address = new Uri("https://notused")
            });
            descriptor.AttributeServiceEndpoint.Add(attributeServiceEndpoint);
            descriptor.ProtocolsSupported.Add(new Uri("http://docs.oasis-open.org/wsfed/federation/200706"));

            var xml = _serializer.WriteRoleDescriptor(descriptor);

            var deserialized = _serializer.ReadRoleDescriptor(xml);

            Assert.IsType <AttributeServiceDescriptor>(deserialized);
            AssertEqual(descriptor, deserialized);
        }
예제 #2
0
        public virtual bool TryReadEndpointReferenceCollection(XmlDictionaryReader reader, string name, string ns, out EndpointReferenceCollection endpointReferenceCollection)
        {
            if (!reader.IsStartElement(name, ns))
            {
                return(Out.False(out endpointReferenceCollection));
            }
            var collection = new EndpointReferenceCollection();

            reader.ForEachChild(r =>
            {
                if (TryReadEndpointReference(r, out var endpointReference))
                {
                    collection.Add(endpointReference);
                    return(true);
                }
                return(false);
            });

            endpointReferenceCollection = collection;
            return(true);
        }