public void ServiceStartedWritesToEventLog()
        {
            DistributorEventLogger logger = new DistributorEventLogger();

            using (var eventLog = new EventLogTracker(GetEventLog()))
            {
                logger.LogServiceStarted();

                Assert.AreEqual(1,
                    eventLog.NewEntries().Count(ev => EventIsFromLogger(ev, logger)));
            }
        }
		public void ServiceStartedWritesToEventLog()
		{
			DistributorEventLogger logger = new DistributorEventLogger(TestApplicationName);

			using (EventLog eventLog = GetEventLog())
			{
				int eventCount = eventLog.Entries.Count;

				logger.LogServiceStarted();

				Assert.AreEqual(eventCount + 1, eventLog.Entries.Count);
			}
		}
		public void ServiceStartedFiresWmiEvent()
		{
			DistributorEventLogger logger = new DistributorEventLogger(TestApplicationName);

			using (WmiEventWatcher eventListener = new WmiEventWatcher(1))
			{
				logger.LogServiceStarted();

				eventListener.WaitForEvents();
				Assert.AreEqual(1, eventListener.EventsReceived.Count);
				Assert.AreEqual("DistributorServiceLifecycleEvent", eventListener.EventsReceived[0].ClassPath.ClassName);
				Assert.AreEqual(true, eventListener.EventsReceived[0].GetPropertyValue("Started"));
			}
		}