/// <summary> /// Checks the specified configuration manager. /// </summary> /// <param name="configurationManager">The configuration manager.</param> /// <returns></returns> public override ProblemCollection Check(ServiceModelConfigurationManager configurationManager) { // Check for service endpoints foreach (ServiceElement serviceElement in configurationManager.GetServices()) { foreach(ServiceEndpointElement endpointElement in serviceElement.Endpoints) { if(endpointElement.Binding.Equals(CustomBindingAttributeValue, StringComparison.InvariantCultureIgnoreCase)) { CheckRuleForCustomBinding(configurationManager.GetCustomBinding(endpointElement.BindingConfiguration)); } } } // Check for client endponts ClientSection client = configurationManager.ServiceModelSection.Client; if(client != null) { foreach(ChannelEndpointElement clientEndpoint in client.Endpoints) { if (clientEndpoint.Binding.Equals(CustomBindingAttributeValue, StringComparison.InvariantCultureIgnoreCase)) { CheckRuleForCustomBinding(configurationManager.GetCustomBinding(clientEndpoint.BindingConfiguration)); } } } return base.Problems; }
public void CanCheckIfContainsServices() { ServiceModelConfigurationManager manager = LoadManager(); Assert.IsTrue(manager.GetServices().Count > 0); Assert.IsTrue(manager.HasServices); }