public void ExportDataGrid() { // arrange var vm = new ProcessSearchGridGadgetGridTabViewModel { ExportGridControl = new GridViewDataControl() }; var exportUtility = new ExportUtility(); Mock.Arrange(() => exportUtility.ExportRecordCount).Returns(int.MaxValue); Mock.Arrange(() => exportUtility.ExportSetup(null, Arg.IsAny<int>(), Arg.IsAny<Action>())) .DoInstead<object, int, Action>((orientation, totalRowCount, action) => action()); vm.TheExportUtility = new Lazy<ExportUtility>(() => exportUtility); var privateAccessor = new PrivateAccessor(vm); privateAccessor.SetField("_currentPageNumber", 10); privateAccessor.SetField("_pageSize", 25); var called = false; Mock.Arrange(() => vm.RefreshView()).DoInstead(() => called = true); // act vm.ExportDataGrid(); // assert Assert.IsTrue(called); Assert.AreEqual(10, privateAccessor.GetField("_tempCurrentPageNumber")); Assert.AreEqual(25, privateAccessor.GetField("_tempPageSize")); Assert.AreEqual(0, privateAccessor.GetField("_currentPageNumber")); Assert.AreEqual(int.MaxValue, privateAccessor.GetField("_pageSize")); // arrange called = false; vm.ExportGridControl = null; var popupFactory = new PopupFactory(); var notifyFailureCalled = false; Mock.Arrange(() => popupFactory.NotifyFailure(LanguageService.Translate("Msg_OpenGridViewBeforeExport"), "Popup_Error", 3, false)).DoInstead(() => notifyFailureCalled = true); vm.ThePopupFactory = popupFactory; // act vm.ExportDataGrid(); // assert Assert.IsTrue(notifyFailureCalled); Assert.IsFalse(called); }
public void PropertiesTest() { var vm = new ProcessSearchGridGadgetGridTabViewModel(); TestsHelper.TestPublicDeclaredPropertiesGetSet(vm, true, x=>x.PageIndex, x=>x.CurrentPageNumber); }
public void OnAfterDataRefreshed() { var vm = new ProcessSearchGridGadgetGridTabViewModel(); Mock.Arrange(() => vm.ProcessSystemName).Returns("eCar_p"); var infoClass = Mock.Create<IInfoClass>(Behavior.Loose); var collectionViewSource = new CollectionViewSource(); Mock.Arrange(() => collectionViewSource.Source).Returns(new List<IInfoClass> { infoClass }); Mock.Arrange(() => vm.InfoList).Returns(collectionViewSource); var exportUtility = new ExportUtility(); var exportStartWasCalled = false; Mock.Arrange(() => exportUtility.ExportStart(Arg.AnyString, Arg.IsAny<GridViewDataControl>(), Arg.AnyString)).DoInstead(() => exportStartWasCalled = true); vm.TheExportUtility = new Lazy<ExportUtility>(() => exportUtility); var refreshViewWasCalled = false; Mock.Arrange(() => vm.RefreshView()).DoInstead(() => refreshViewWasCalled = true); var privateAccessor = new PrivateAccessor(vm); privateAccessor.SetField("_tempCurrentPageNumber", 10); privateAccessor.SetField("_tempPageSize", 25); // act privateAccessor.CallMethod("OnAfterDataRefreshed", new[] { new object(), EventArgs.Empty }); // assert Assert.IsTrue(exportStartWasCalled); Assert.IsTrue(refreshViewWasCalled); Assert.AreEqual(10, privateAccessor.GetField("_currentPageNumber")); Assert.AreEqual(25, privateAccessor.GetField("_pageSize")); // arrange exportStartWasCalled = false; Mock.Arrange(() => collectionViewSource.Source).ReturnsCollection(new List<IInfoClass>()); // act privateAccessor.CallMethod("OnAfterDataRefreshed", new[] { new object(), EventArgs.Empty }); // assert Assert.IsFalse(exportStartWasCalled); }