public void AfterGaugeChanges_StateIndicatorAngleShouldBeUpdated() { var kpiUp = Mock.Create<IKpi>(); Mock.Arrange(() => kpiUp.FavorableDirection).Returns(FavorableDirections.Up); var kpiDown = Mock.Create<IKpi>(); Mock.Arrange(() => kpiDown.FavorableDirection).Returns(FavorableDirections.Down); var dynamicManager = Mock.Create<IDynamicTypeManager>(); Mock.Arrange(() => dynamicManager.GetKpiInfoType(Arg.AnyString)).Returns(typeof(object)); var gadget = new ProcessKpiGaugeGadgetViewModel() { TheDynamicTypeManager = dynamicManager }; gadget.KPIs.Add(kpiUp); gadget.KPIs.Add(kpiDown); gadget.SelectedKPI = kpiUp; var vm = new ProcessKpiGaugeGadgetTabViewModel { Parent = gadget }; // Act vm.IsSelected = true; // Assert Assert.AreEqual(vm.StateIndicatorAngle, 0); // Arrange gadget.SelectedKPI = kpiDown; // Act vm.IsSelected = true; // Assert Assert.AreEqual(vm.StateIndicatorAngle, 180); }
public void ProcessKpiGaugeGadgetViewModelConstructorTests() { var vm = new ProcessKpiGaugeGadgetViewModel(); Assert.IsTrue(vm.AutoSaveProperties.Contains("SelectedKPI")); Assert.IsFalse(vm.AutoSaveProperties.Contains("NonExistentProperty")); }
public void SaveSettingsExecuteTests() { var vm = new ProcessKpiGaugeGadgetViewModel(); var saveWasFired = false; Mock.NonPublic.Arrange(vm, "RaisePropertyChanged", ArgExpr.IsAny<string>()).CallOriginal(); vm.RequestSave += (o, e) => { saveWasFired = true; }; EnqueueConditional(() => saveWasFired); EnqueueCallback(() => Assert.IsTrue(saveWasFired)); vm.SelectedKPI = new Kpi(1, "metric", Guid.NewGuid(), FavorableDirections.Up, 0.00, 1.00, string.Empty, null, 0.50, string.Empty, null, string.Empty, null, Guid.NewGuid(), string.Empty); Mock.NonPublic.Assert(vm, "RaisePropertyChanged", Occurs.AtLeast(1), ArgExpr.IsAny<string>()); EnqueueTestComplete(); }
//[Ignore] public void LoadSettingsExecuteTests() { var kpiGuid = Guid.NewGuid(); var vm = new ProcessKpiGaugeGadgetViewModel { PublishedProcessFactory = null, TheDynamicTypeManager = Mock.Create<IDynamicTypeManager>(Behavior.Loose), TabsFactory = new List<ExportFactory<IGadgetTabViewModel, IExportAsGadgetTabViewModelAttributeMetadata>>(), TheEventAggregator = Mock.Create<IEventAggregator>(Behavior.Loose) }; vm.KPIs.Add(new Kpi(1, "kpi", kpiGuid, FavorableDirections.Up, 0.00, 1.00, string.Empty, null, 0.50, string.Empty, null, string.Empty, null, Guid.NewGuid(), string.Empty)); var settings = new Dictionary<string, string> { { "SelectedKPI", kpiGuid.ToString() } }; // act vm.Init(new Gadget(), Guid.NewGuid(), "name", settings); // assert Assert.AreEqual(kpiGuid, vm.SelectedKPI.Guid); }
public void NotifyPropertyChangedTests() { var vm = new ProcessKpiGaugeGadgetViewModel(); TestsHelper.TestPropertyWithNotifyPropertyChanged(vm, () => vm.SelectedKPI); }
public void KpiGaugeGadgetMustHaveDescriptionLabel() { // arrange var vm = new ProcessKpiGaugeGadgetViewModel(); // act vm.SelectedKPI = new Kpi(1, "Our KPI Name", Guid.NewGuid(), FavorableDirections.Up, 1.0, 1.0, string.Empty, 1, 1.0, string.Empty, 1, string.Empty, 1, Guid.NewGuid(), string.Empty); // assert Assert.AreEqual("Our KPI Name", vm.ItemName); }