public void WhenTheStateOfTheProjectChangesTheStatusEntriesOnTheListViewItemAreUpdated()
		{
			StubProjectMonitor projectMonitor = new StubProjectMonitor("projectName");
			projectMonitor.ProjectState = ProjectState.Building;
			projectMonitor.ProjectStatus = null;
            projectMonitor.Configuration = new CCTrayProject("http://somewhere", "projectName");

			ProjectStatusListViewItemAdaptor adaptor = new ProjectStatusListViewItemAdaptor(detailStringFormatter);
			ListViewItem item = adaptor.Create(projectMonitor);

			Assert.AreEqual(10, item.SubItems.Count);
			ListViewItem.ListViewSubItem activity = item.SubItems[3];
			ListViewItem.ListViewSubItem label = item.SubItems[5];

			Assert.AreEqual("", activity.Text);
			Assert.AreEqual("", label.Text);

			ProjectStatus status = ProjectStatusFixture.New(ProjectActivity.Sleeping, "lastLabel");
			projectMonitor.ProjectStatus = status;

			projectMonitor.OnPolled(new MonitorPolledEventArgs(projectMonitor));

			Assert.AreEqual("Sleeping", activity.Text);
			Assert.AreEqual("lastLabel", label.Text);

		}
		public void SetUp()
		{
			stubProjectMonitor = new StubProjectMonitor("project");

			mockAudioPlayer = new DynamicMock(typeof(IAudioPlayer));
			mockAudioPlayer.Strict = true;
		}
Пример #3
0
        public void SetUp()
        {
            stubProjectMonitor = new StubProjectMonitor("project");

            mockLampController = new Mock <ILampController>(MockBehavior.Strict);
            ILampController lampController = mockLampController.Object as ILampController;

            configuration           = new X10Configuration();
            configuration.Enabled   = true;
            configuration.StartTime = DateTime.Parse("08:00");
            configuration.EndTime   = DateTime.Parse("18:00");
            configuration.ActiveDays[(int)DayOfWeek.Sunday]    = false;
            configuration.ActiveDays[(int)DayOfWeek.Monday]    = true;
            configuration.ActiveDays[(int)DayOfWeek.Tuesday]   = true;
            configuration.ActiveDays[(int)DayOfWeek.Wednesday] = true;
            configuration.ActiveDays[(int)DayOfWeek.Thursday]  = true;
            configuration.ActiveDays[(int)DayOfWeek.Friday]    = true;
            configuration.ActiveDays[(int)DayOfWeek.Saturday]  = false;

            stubCurrentTimeProvider = new StubCurrentTimeProvider();
            stubCurrentTimeProvider.SetNow(new DateTime(2005, 11, 03, 12, 00, 00));
            Assert.AreEqual(DayOfWeek.Thursday, stubCurrentTimeProvider.Now.DayOfWeek);

            new X10Controller(
                stubProjectMonitor,
                stubCurrentTimeProvider,
                configuration,
                lampController);
        }
		public void SetUp()
		{
			stubProjectMonitor = new StubProjectMonitor("project");

			mockLampController = new DynamicMock(typeof(ILampController));
			mockLampController.Strict = true;
			ILampController lampController = mockLampController.MockInstance as ILampController;
			
			configuration = new X10Configuration();
			configuration.Enabled = true;
			configuration.StartTime = DateTime.Parse("08:00");
			configuration.EndTime = DateTime.Parse("18:00");
            configuration.ActiveDays[(int)DayOfWeek.Sunday] = false;
            configuration.ActiveDays[(int)DayOfWeek.Monday] = true;
            configuration.ActiveDays[(int)DayOfWeek.Tuesday] = true;
            configuration.ActiveDays[(int)DayOfWeek.Wednesday] = true;
            configuration.ActiveDays[(int)DayOfWeek.Thursday] = true;
            configuration.ActiveDays[(int)DayOfWeek.Friday] = true;
            configuration.ActiveDays[(int)DayOfWeek.Saturday] = false;
			
			stubCurrentTimeProvider = new StubCurrentTimeProvider();
			stubCurrentTimeProvider.SetNow(new DateTime(2005, 11, 03, 12, 00, 00));
			Assert.AreEqual(DayOfWeek.Thursday, stubCurrentTimeProvider.Now.DayOfWeek);

			new X10Controller(
				stubProjectMonitor, 
				stubCurrentTimeProvider, 
				configuration,
				lampController);
		}
		public void CanCreateListViewItem()
		{
			StubProjectMonitor projectMonitor = new StubProjectMonitor("projectName");

			ProjectStatusListViewItemAdaptor adaptor = new ProjectStatusListViewItemAdaptor(detailStringFormatter);
			ListViewItem item = adaptor.Create(projectMonitor);

			Assert.AreEqual("projectName", item.Text);
			Assert.AreEqual(0, item.ImageIndex);
		}
        public void WhenPolledIsFiredTheSourcePointToTheAggregatorNotTheFiringProject()
        {
            StubProjectMonitor stubProjectMonitor1 = new StubProjectMonitor("project1");

            aggregator         = new AggregatingProjectMonitor(stubProjectMonitor1);
            aggregator.Polled += new MonitorPolledEventHandler(Aggregator_Polled);

            stubProjectMonitor1.OnPolled(new MonitorPolledEventArgs(stubProjectMonitor1));

            Assert.AreSame(lastPolledSource, aggregator);
            Assert.AreSame(lastPolledArgs.ProjectMonitor, stubProjectMonitor1);
        }
		public void SetUp()
		{
			monitor = new StubProjectMonitor( "testProject" );

			mockIconProvider = new DynamicMock( typeof (IProjectStateIconProvider) );
			this.mockIconProvider.Strict = true;

			iconProvider = (IProjectStateIconProvider) this.mockIconProvider.MockInstance;

			this.monitor.ProjectState = ProjectState.Building;

		}
        public void PolledIsFiredWheneverAnyContainedProjectStatusFiresIt()
        {
            pollCount = 0;

            StubProjectMonitor stubProjectMonitor1 = new StubProjectMonitor("project1");
            StubProjectMonitor stubProjectMonitor2 = new StubProjectMonitor("project2");

            aggregator         = new AggregatingProjectMonitor(stubProjectMonitor1, stubProjectMonitor2);
            aggregator.Polled += new MonitorPolledEventHandler(Aggregator_Polled);

            Assert.AreEqual(0, pollCount);
            stubProjectMonitor1.OnPolled(new MonitorPolledEventArgs(stubProjectMonitor1));

            Assert.AreEqual(1, pollCount);
        }
		public void WhenTheStateOfTheProjectChangesTheIconIsUpdated()
		{
			StubProjectMonitor projectMonitor = new StubProjectMonitor("projectName");
			ProjectStatusListViewItemAdaptor adaptor = new ProjectStatusListViewItemAdaptor(detailStringFormatter);
			ListViewItem item = adaptor.Create(projectMonitor);

			Assert.AreEqual("projectName", item.Text);
			Assert.AreEqual(0, item.ImageIndex);

			projectMonitor.ProjectState = ProjectState.Building;

			projectMonitor.OnPolled(new MonitorPolledEventArgs(projectMonitor));

			Assert.AreEqual("projectName", item.Text);
			Assert.AreEqual(ProjectState.Building.ImageIndex, item.ImageIndex);
		}
		public void WhenBuildOccurredIsFiredTheDelegateIsInvokedThroughISynchronisedInvoke()
		{
			DynamicMock mockSynchronizeInvoke = new DynamicMock(typeof (ISynchronizeInvoke));
			StubProjectMonitor containedMonitor = new StubProjectMonitor("test");

			SynchronizedProjectMonitor monitor = new SynchronizedProjectMonitor(
				containedMonitor,
				(ISynchronizeInvoke) mockSynchronizeInvoke.MockInstance);

			MonitorBuildOccurredEventHandler delegateToBuildOccurred = new MonitorBuildOccurredEventHandler(Monitor_BuildOccurred);
			monitor.BuildOccurred += delegateToBuildOccurred;

			mockSynchronizeInvoke.Expect("BeginInvoke", delegateToBuildOccurred, new IsTypeOf(typeof (object[])));
			containedMonitor.OnBuildOccurred(new MonitorBuildOccurredEventArgs(null, BuildTransition.StillFailing));

			mockSynchronizeInvoke.Verify();
		}
		public void WhenPolledIsFiredTheDelegateIsInvokedThroughISynchronisedInvoke()
		{
			DynamicMock mockSynchronizeInvoke = new DynamicMock(typeof (ISynchronizeInvoke));
			StubProjectMonitor containedMonitor = new StubProjectMonitor("test");

			SynchronizedProjectMonitor monitor = new SynchronizedProjectMonitor(
				containedMonitor,
				(ISynchronizeInvoke) mockSynchronizeInvoke.MockInstance);

			MonitorPolledEventHandler delegateToPolledMethod = new MonitorPolledEventHandler(Monitor_Polled);
			monitor.Polled += delegateToPolledMethod;

			mockSynchronizeInvoke.Expect("BeginInvoke", delegateToPolledMethod, new IsTypeOf(typeof (object[])));
			containedMonitor.OnPolled(new MonitorPolledEventArgs(containedMonitor));

			mockSynchronizeInvoke.Verify();
		}
        public void BuildOccuredIsFiredWheneverAnyContainedProjectStatusFiresIt()
        {
            buildOccurredCount         = 0;
            lastBuildOccurredEventArgs = null;

            StubProjectMonitor stubProjectMonitor1 = new StubProjectMonitor("project1");
            StubProjectMonitor stubProjectMonitor2 = new StubProjectMonitor("project2");

            aggregator = new AggregatingProjectMonitor(stubProjectMonitor1, stubProjectMonitor2);
            aggregator.BuildOccurred += new MonitorBuildOccurredEventHandler(Aggregator_BuildOccurred);

            Assert.AreEqual(0, buildOccurredCount);
            stubProjectMonitor1.OnBuildOccurred(new MonitorBuildOccurredEventArgs(stubProjectMonitor1, BuildTransition.Fixed));

            Assert.AreEqual(1, buildOccurredCount);
            Assert.AreSame(stubProjectMonitor1, lastBuildOccurredEventArgs.ProjectMonitor);
            Assert.AreEqual(BuildTransition.Fixed, lastBuildOccurredEventArgs.BuildTransition);
        }
		public void BuildOccuredIsFiredWheneverAnyContainedProjectStatusFiresIt()
		{
			buildOccurredCount = 0;
			lastBuildOccurredEventArgs = null;

			StubProjectMonitor stubProjectMonitor1 = new StubProjectMonitor("project1");
			StubProjectMonitor stubProjectMonitor2 = new StubProjectMonitor("project2");

			aggregator = new AggregatingProjectMonitor(stubProjectMonitor1, stubProjectMonitor2);
			aggregator.BuildOccurred += new MonitorBuildOccurredEventHandler(Aggregator_BuildOccurred);

			Assert.AreEqual(0, buildOccurredCount);
			stubProjectMonitor1.OnBuildOccurred(new MonitorBuildOccurredEventArgs(stubProjectMonitor1, BuildTransition.Fixed));

			Assert.AreEqual(1, buildOccurredCount);
			Assert.AreSame(stubProjectMonitor1, lastBuildOccurredEventArgs.ProjectMonitor);
			Assert.AreEqual(BuildTransition.Fixed, lastBuildOccurredEventArgs.BuildTransition);
		}
        public void UsesDescriptionBuilderToGenerateDetailCaption()
        {
            StubProjectMonitor projectMonitor = new StubProjectMonitor("projectName");
            mockProjectDetailStringFormatter.Strict = true;

            mockProjectDetailStringFormatter.ExpectAndReturn("FormatDetailString", "test1", projectMonitor);
            ProjectStatusListViewItemAdaptor adaptor = new ProjectStatusListViewItemAdaptor(detailStringFormatter);
            ListViewItem item = adaptor.Create(projectMonitor);

            ListViewItem.ListViewSubItem detail = item.SubItems[4];
            Assert.AreEqual("test1", detail.Text);

            mockProjectDetailStringFormatter.ExpectAndReturn("FormatDetailString", "test2", projectMonitor);
            projectMonitor.OnPolled(new MonitorPolledEventArgs(projectMonitor));

            Assert.AreEqual("test2", detail.Text);

            mockProjectDetailStringFormatter.Verify();
        }
 protected void SetUp()
 {
     monitor = new StubProjectMonitor("name");
     provider = new DetailStringProvider();
 }
		public void PolledIsFiredWheneverAnyContainedProjectStatusFiresIt()
		{
			pollCount = 0;

			StubProjectMonitor stubProjectMonitor1 = new StubProjectMonitor("project1");
			StubProjectMonitor stubProjectMonitor2 = new StubProjectMonitor("project2");

			aggregator = new AggregatingProjectMonitor(stubProjectMonitor1, stubProjectMonitor2);
			aggregator.Polled += new MonitorPolledEventHandler(Aggregator_Polled);

			Assert.AreEqual(0, pollCount);
			stubProjectMonitor1.OnPolled(new MonitorPolledEventArgs(stubProjectMonitor1));

			Assert.AreEqual(1, pollCount);
		}
		public void WhenPolledIsFiredTheSourcePointToTheAggregatorNotTheFiringProject()
		{
			StubProjectMonitor stubProjectMonitor1 = new StubProjectMonitor("project1");

			aggregator = new AggregatingProjectMonitor(stubProjectMonitor1);
			aggregator.Polled += new MonitorPolledEventHandler(Aggregator_Polled);

			stubProjectMonitor1.OnPolled(new MonitorPolledEventArgs(stubProjectMonitor1));

			Assert.AreSame(lastPolledSource, aggregator);
			Assert.AreSame(lastPolledArgs.ProjectMonitor, stubProjectMonitor1);
		}