private IHealthCheckResult BuildHealthCheckAndSetExpectations(bool categoryFound, bool[] counterExistence) { IPerformanceCounterInquisitor inquisitor = m_MockRepository.StrictMock <IPerformanceCounterInquisitor>(); IHealthCheck healthCheck = PerformanceCounterRegistrationHealthCheck.Create(inquisitor); using (m_MockRepository.Record()) { Expect.Call(inquisitor.CheckCategoryExists(PerformanceCounterRegistrar.CategoryName)).Return( categoryFound); Debug.Assert(counterExistence.Length == m_PerformanceCounterDefinitions.Count); if (categoryFound) { for (int index = 0; index < m_PerformanceCounterDefinitions.Count; index++) { Expect.Call(inquisitor.CheckCounterExists(m_PerformanceCounterDefinitions[index].CounterName)). Return(counterExistence[index]); } } m_MockRepository.ReplayAll(); } return(healthCheck.Execute()); }
public void CountersCreatedAndCleanedUp() { IPerformanceCounterInquisitor inquisitor = PerformanceCounterInquisitor.Create(); using (PerformanceCounterRegistrarDisposable.Create()) { Assert.IsTrue(inquisitor.CheckCategoryExists(PerformanceCounterRegistrar.CategoryName)); foreach (CounterCreationData counterCreationData in PerformanceCounterRegistrar.CounterDefinitions) { Assert.IsTrue(inquisitor.CheckCounterExists(counterCreationData.CounterName)); } } Assert.IsFalse(inquisitor.CheckCategoryExists(PerformanceCounterRegistrar.CategoryName)); // The category contains the counters so when the category does not exist you can be assured the categories do not exist. }
/// <summary> /// Creates the specified inquisitor. /// </summary> /// <param name = "inquisitor">The inquisitor.</param> /// <returns>An instance of the PerformanceCounterRegistrationHealthCheck class as an <see cref = "IHealthCheck" /></returns> public static IHealthCheck Create(IPerformanceCounterInquisitor inquisitor) { return(new PerformanceCounterRegistrationHealthCheck(inquisitor)); }
/// <summary> /// Initializes a new instance of the <see cref = "PerformanceCounterRegistrationHealthCheck" /> class. /// </summary> /// <param name = "inquisitor">The inquisitor.</param> private PerformanceCounterRegistrationHealthCheck(IPerformanceCounterInquisitor inquisitor) { m_Inquisitor = inquisitor; }