public void LookupController_Search_RunSimpleSearch_WithSort() { // arrange LookupServiceInstance.SimpleSearchReturnValue = LookupTestUtility.CreateModels(false, 100); var model = UnitTestUtility.GetModel <LookupSearchViewModel>( SystemUnderTest.Search()); model.IsSimpleSearch = true; model.SimpleSearchValue = "searchval"; // act & assert // first time sort by null to simulate the first search on the page var actual = UnitTestUtility.GetModel <LookupSearchViewModel>( SystemUnderTest.Search(model, null, null)); SearchAndSortTestUtility.AssertSearchResultsAndSortDirection(actual, null, SearchConstants.SortDirectionAscending); // sort by Lookup name to simulate sorting the search string sortBy = nameof(Lookup.Id); actual = UnitTestUtility.GetModel <LookupSearchViewModel>( SystemUnderTest.Search(model, null, sortBy)); SearchAndSortTestUtility.AssertSearchResultsAndSortDirection(actual, sortBy, SearchConstants.SortDirectionAscending); // sort by Lookup name again to simulate flipping the sort direction sortBy = nameof(Lookup.Id); actual = UnitTestUtility.GetModel <LookupSearchViewModel>( SystemUnderTest.Search(model, null, sortBy)); SearchAndSortTestUtility.AssertSearchResultsAndSortDirection(actual, sortBy, SearchConstants.SortDirectionDescending); }
public void LookupController_Search_RunSimpleSearch_ShouldHaveRecords() { // arrange LookupServiceInstance.SimpleSearchReturnValue = LookupTestUtility.CreateModels(false, 100); var model = UnitTestUtility.GetModel <LookupSearchViewModel>( SystemUnderTest.Search()); model.IsSimpleSearch = true; model.SimpleSearchValue = "searchval"; // act var result = SystemUnderTest.Search(model, null, null); var actual = UnitTestUtility.GetModel <LookupSearchViewModel>(result); // assert Assert.IsNotNull(actual, "Model was null"); Assert.IsNotNull(actual.Results, "Results was null"); Assert.IsNotNull(actual.Results.PageValues, "Results.PageValues was null"); Assert.AreNotEqual <int>(0, actual.Results.PageValues.Count, "No items on the current page"); Assert.IsTrue(String.IsNullOrEmpty(actual.CurrentSortProperty), "CurrentSortProperty should be null or empty."); Assert.AreEqual <string>(SearchConstants.SortDirectionAscending, actual.CurrentSortDirection, "CurrentSortDirection was wrong"); }
public void AdaptLookupFromModelsToEntities_MergesByIdForExistingValues() { // arrange var fromValues = LookupTestUtility.CreateModels(false); var toValues = new List <Benday.EasyAuthDemo.Api.DataAccess.Entities.LookupEntity>(); foreach (var fromValue in fromValues) { Assert.AreNotEqual <int>(0, fromValue.Id, "Value wasn't 'saved' before start of test."); } int expectedCount = fromValues.Count; // adapt first time SystemUnderTest.Adapt(fromValues, toValues); var originalValuesById = GetOriginalValuesById(toValues); // act // call adapt again SystemUnderTest.Adapt(fromValues, toValues); // assert Assert.AreNotEqual <int>(0, toValues.Count, "There should be values."); AssertValuesStillExistAndIdDidNotChange(toValues, originalValuesById); LookupTestUtility.AssertAreEqual(fromValues, toValues); }
public void AdaptLookupFromModelsToEntities_ToEmpty() { // arrange var fromValues = LookupTestUtility.CreateModels(); var toValues = new List <Benday.EasyAuthDemo.Api.DataAccess.Entities.LookupEntity>(); // act SystemUnderTest.Adapt(fromValues, toValues); // assert Assert.AreNotEqual <int>(0, toValues.Count, "There should be values."); LookupTestUtility.AssertAreEqual(fromValues, toValues); }
public void LookupController_Index_CallsServiceAndReturnsList() { // arrange var expected = LookupTestUtility.CreateModels(); LookupServiceInstance.GetAllReturnValue = expected; // act var actual = UnitTestUtility.GetModel <IList <Lookup> >( SystemUnderTest.Index()); // assert Assert.IsNotNull(actual, "Model was null."); Assert.AreSame(expected, actual, "Did not return the expected instance."); Assert.IsTrue(LookupServiceInstance.WasGetAllCalled, "GetAll was not called."); }
public void LookupController_Search_LoadPage() { // arrange LookupServiceInstance.SearchUsingSimpleSearchReturnValue = LookupTestUtility.CreateModels(false, 100); // act var result = SystemUnderTest.Search(); // assert var model = UnitTestUtility.GetModel <LookupSearchViewModel>(result); Assert.IsNotNull(model, "Model was null"); Assert.IsTrue(model.IsSimpleSearch, "IsSimpleSearch"); Assert.IsFalse(LookupServiceInstance.WasSearchUsingSimpleSearchCalled, "Search using simple search should not be called."); }
public void LookupController_Search_RunSimpleSearch_WithSort_ChangePages() { // arrange LookupServiceInstance.SimpleSearchReturnValue = LookupTestUtility.CreateModels(false, 100); var model = UnitTestUtility.GetModel <LookupSearchViewModel>( SystemUnderTest.Search()); model.IsSimpleSearch = true; model.SimpleSearchValue = "searchval"; // act & assert // sort by Lookup name to simulate sorting the search string sortBy = nameof(Lookup.Id); var actual = UnitTestUtility.GetModel <LookupSearchViewModel>( SystemUnderTest.Search(model, null, sortBy)); SearchAndSortTestUtility.AssertSearchResultsAndSortDirection(actual, sortBy, SearchConstants.SortDirectionAscending); Assert.IsTrue(actual.Results.PageCount > 2, "PageCount should be greater than 2 for this test"); var page1Values = new List <Lookup>(actual.Results.PageValues); // change to page 2 actual = UnitTestUtility.GetModel <LookupSearchViewModel>( SystemUnderTest.Search(model, "2", null)); SearchAndSortTestUtility.AssertSearchResultsAndSortDirection(actual, sortBy, SearchConstants.SortDirectionAscending); Assert.AreEqual <int>(2, actual.Results.CurrentPage, "Results page number was wrong."); var page2Values = new List <Lookup>(actual.Results.PageValues); CollectionAssert.AreNotEquivalent(page2Values, page1Values, "Page values didn't change"); // change to page 3 actual = UnitTestUtility.GetModel <LookupSearchViewModel>( SystemUnderTest.Search(model, "3", null)); SearchAndSortTestUtility.AssertSearchResultsAndSortDirection(actual, sortBy, SearchConstants.SortDirectionAscending); Assert.AreEqual <int>(3, actual.Results.CurrentPage, "Results page number was wrong."); var page3Values = new List <Lookup>(actual.Results.PageValues); CollectionAssert.AreNotEquivalent(page3Values, page2Values, "Page values didn't change"); }
private void InitializeFakeLookups() { LookupServiceInstance.GetAllByTypeReturnValue = LookupTestUtility.CreateModels(false); }