public TruckManufacturerViewModel SearchTruckManufacturer(TruckManufacturerViewModel manufacturer) { var truckSearchResult = new TruckManufacturer(); if (!string.IsNullOrEmpty(manufacturer.Description)) { //Search for manufacturer in DB only if numbers and letters in manufacturer name if (!ValidateManufacturerString(manufacturer.Description)) { manufacturer.IsValid = false; } else { truckSearchResult = _truckManufacturerContext.Collection().Where(m => m.ManufacturerDescription == manufacturer.Description).FirstOrDefault(); if (truckSearchResult == null) { manufacturer.ExistInDB = false; } else { manufacturer.Id = truckSearchResult.Id; manufacturer.Description = truckSearchResult.ManufacturerDescription; } } } return(manufacturer); }
public void Test_ManufacturerDescriptionIsNotEmptyOrNullAndContainsOnlyLettersOrNumbersAndDoesNotExistAlreadyInDB_ManufacturerAdded() { //Arrange IRepository <TruckManufacturer> _truckManufacturerContext = new MockTruckCheckUpContext <TruckManufacturer>(); ILogger _logger = new MockTruckCheckUpLogger(); TruckManufacturerService truckManufacturerService = new TruckManufacturerService(_truckManufacturerContext, _logger); truckManufacturerService.ValidateTruckManufacturerToAdd(new TruckManufacturerViewModel() { Id = "3", Description = "GMC" }); var manufacturerToInsertViewModel = new TruckManufacturerViewModel() { Id = "4", Description = "Chevy" }; if (!string.IsNullOrEmpty(manufacturerToInsertViewModel.Description)) { if (truckManufacturerService.ValidateManufacturerString(manufacturerToInsertViewModel.Description)) { if (!truckManufacturerService.RetrieveTruckManufacturerName(manufacturerToInsertViewModel.Description)) { truckManufacturerService.SaveNewTruckManufacturerData(manufacturerToInsertViewModel, new Log4NetLogger()); } } } //Act var result = truckManufacturerService.RetrieveAllTruckManufacturers(); //Assert Assert.AreEqual(2, result.Count); }
public void Test_ManufacturerDescriptionFieldEmptyOrNull_ManufacturerNotAdded() { //Arrange IRepository <TruckManufacturer> _truckManufacturerContext = new MockTruckCheckUpContext <TruckManufacturer>(); ILogger _logger = new MockTruckCheckUpLogger(); TruckManufacturerService truckManufacturerService = new TruckManufacturerService(_truckManufacturerContext, _logger); truckManufacturerService.ValidateTruckManufacturerToAdd(new TruckManufacturerViewModel() { Id = "5", Description = "Toyota" }); //Arrange - Add record with empty ManufacturerDescription var manufacturerToInsertViewModel = new TruckManufacturerViewModel() { Id = "6", Description = "" }; //Act if (!string.IsNullOrEmpty(manufacturerToInsertViewModel.Description)) { truckManufacturerService.SaveNewTruckManufacturerData(manufacturerToInsertViewModel, new Log4NetLogger()); } var result = truckManufacturerService.RetrieveAllTruckManufacturers(); //Assert Assert.AreEqual(1, result.Count); }
public void Test_SearchForManufacturerInDB_ManufacturerDoesNotExist() { //Arrange IRepository <TruckManufacturer> _truckManufacturerContext = new MockTruckCheckUpContext <TruckManufacturer>(); ILogger _logger = new MockTruckCheckUpLogger(); TruckManufacturerService truckManufacturerService = new TruckManufacturerService(_truckManufacturerContext, _logger); truckManufacturerService.ValidateTruckManufacturerToAdd( new TruckManufacturerViewModel() { Description = "Chevrolet" }); truckManufacturerService.ValidateTruckManufacturerToAdd( new TruckManufacturerViewModel() { Description = "Dodge" }); //Act var manufacturer = new TruckManufacturerViewModel(); manufacturer.Description = "Toyota"; var result = truckManufacturerService.SearchTruckManufacturer(manufacturer); _logger.Info("Test-SearchForManufacturerInDB-ManufacturerDoesNotExist"); //Assert Assert.AreEqual(false, result.ExistInDB); }
public void Test_DeleteManufacturerFromDB_ManufacturerDeleted() { //Arrange IRepository <TruckManufacturer> _truckManufacturerContext = new Mocks.MockTruckCheckUpContext <TruckManufacturer>(); ILogger _logger = new MockTruckCheckUpLogger(); TruckManufacturerService truckManufacturerService = new TruckManufacturerService(_truckManufacturerContext, _logger); truckManufacturerService.ValidateTruckManufacturerToAdd( new TruckManufacturerViewModel() { Description = "Chevrolet" }); truckManufacturerService.ValidateTruckManufacturerToAdd( new TruckManufacturerViewModel() { Description = "Dodge" }); var manufacturer = new TruckManufacturerViewModel(); manufacturer.Description = "Chevrolet"; var manufacturerToDelete = truckManufacturerService.SearchTruckManufacturer(manufacturer); //Act truckManufacturerService.ValidateTruckManufacturerToDelete(manufacturerToDelete.Id); _logger.Info("Test-DeleteManufacturerFromDB-ManufacturerDeleted"); var result = truckManufacturerService.SearchTruckManufacturer(manufacturer); //Assert Assert.AreEqual(false, result.ExistInDB); }
public void Test_ManufacturerDescriptionFieldContainsNotAllowedCharacters_ManufacturerNotUpdated() { //Arrange IRepository <TruckManufacturer> _truckManufacturerContext = new Mocks.MockTruckCheckUpContext <TruckManufacturer>(); ILogger _logger = new MockTruckCheckUpLogger(); TruckManufacturerService truckManufacturerService = new TruckManufacturerService(_truckManufacturerContext, _logger); truckManufacturerService.ValidateTruckManufacturerToAdd(new TruckManufacturerViewModel() { Id = "7", Description = "Hyundai" }); //Add record with characters not allowed var manufacturerToUpdate = new TruckManufacturerViewModel() { Id = "7", Description = "Kenw@rth" }; //Act if (truckManufacturerService.ValidateManufacturerString(manufacturerToUpdate.Description)) { truckManufacturerService.UpdateTruckManufacturerData(manufacturerToUpdate, new Log4NetLogger()); } var manufacturerUpdated = new TruckManufacturerViewModel(); manufacturerUpdated.Description = "Hyundai"; var result = truckManufacturerService.SearchTruckManufacturer(manufacturerUpdated); //Assert Assert.AreEqual("Hyundai", result.Description); }
public void Test_ManufacturerDescriptionFieldEmptyOrNull_NoRecordUpdated() { //Arrange IRepository <TruckManufacturer> _truckManufacturerContext = new Mocks.MockTruckCheckUpContext <TruckManufacturer>(); ILogger _logger = new MockTruckCheckUpLogger(); TruckManufacturerService truckManufacturerService = new TruckManufacturerService(_truckManufacturerContext, _logger); truckManufacturerService.ValidateTruckManufacturerToAdd(new TruckManufacturerViewModel() { Description = "Toyota" }); var manufacturer = new TruckManufacturerViewModel(); manufacturer.Description = "Toyota"; var manufacturerSearchResult = truckManufacturerService.SearchTruckManufacturer(manufacturer); var manufacturerToUpdate = new TruckManufacturerViewModel() { Id = manufacturerSearchResult.Id, Description = "" }; //Act if (!string.IsNullOrEmpty(manufacturerToUpdate.Description)) { truckManufacturerService.UpdateTruckManufacturerData(manufacturerToUpdate, new Log4NetLogger()); _logger.Info("Test-ManufacturerDescriptionFieldEmptyOrNull-NoRecordUpdated"); } var result = truckManufacturerService.SearchTruckManufacturer(manufacturer); //Assert Assert.AreEqual("Toyota", result.Description); }
public void Test_ManufacturerAlreadyExistInDB_ManufacturerNotAdded() { //Arrange IRepository <TruckManufacturer> _truckManufacturerContext = new Mocks.MockTruckCheckUpContext <TruckManufacturer>(); ILogger _logger = new MockTruckCheckUpLogger(); TruckManufacturerService truckManufacturerService = new TruckManufacturerService(_truckManufacturerContext, _logger); truckManufacturerService.ValidateTruckManufacturerToAdd(new TruckManufacturerViewModel() { Id = "7", Description = "Hyundai" }); //Add manufacturer that already exist var manufacturerToInsertViewModel = new TruckManufacturerViewModel() { Id = "8", Description = "Hyundai" }; //Act if (!truckManufacturerService.RetrieveTruckManufacturerName(manufacturerToInsertViewModel.Description)) { truckManufacturerService.SaveNewTruckManufacturerData(manufacturerToInsertViewModel, new Log4NetLogger()); } var result = truckManufacturerService.RetrieveAllTruckManufacturers(); //Assert Assert.AreEqual(1, result.Count); }
public void Test_ManufacturerDescriptionFieldContainsCharactersNotAllowed_ManufacturerNotAdded() { //Arrange IRepository <TruckManufacturer> _truckManufacturerContext = new Mocks.MockTruckCheckUpContext <TruckManufacturer>(); ILogger _logger = new MockTruckCheckUpLogger(); TruckManufacturerService truckManufacturerService = new TruckManufacturerService(_truckManufacturerContext, _logger); truckManufacturerService.ValidateTruckManufacturerToAdd(new TruckManufacturerViewModel() { Id = "7", Description = "Hyundai" }); //Add record with characters not allowed var manufacturerToInsertViewModel = new TruckManufacturerViewModel() { Id = "8", Description = "Intern@tion@l" }; //Act if (truckManufacturerService.ValidateManufacturerString(manufacturerToInsertViewModel.Description)) { truckManufacturerService.SaveNewTruckManufacturerData(manufacturerToInsertViewModel, new Log4NetLogger()); } var result = truckManufacturerService.RetrieveAllTruckManufacturers(); //Assert Assert.AreEqual(1, result.Count); }
public void SaveNewTruckManufacturerData(TruckManufacturerViewModel truckManufacturer, ILogger logger) { var truckManufacturerToInsert = new TruckManufacturer(); truckManufacturerToInsert.ManufacturerDescription = truckManufacturer.Description; _truckManufacturerContext.Insert(truckManufacturerToInsert); _truckManufacturerContext.Commit(); logger.Info("Inserted record Id " + truckManufacturerToInsert.Id + " into Table " + tableNameUsedByLogger); }
public void UpdateTruckManufacturerData(TruckManufacturerViewModel truckManufacturer, ILogger logger) { var truckManufacturerToUpdate = _truckManufacturerContext.Find(truckManufacturer.Id); if (truckManufacturerToUpdate != null) { logger.Info("Found record Id " + truckManufacturerToUpdate.Id + " in Table " + tableNameUsedByLogger); truckManufacturerToUpdate.ManufacturerDescription = truckManufacturer.Description; _truckManufacturerContext.Commit(); logger.Info("Updated record Id " + truckManufacturerToUpdate.Id + " in Table " + tableNameUsedByLogger); } }
public JsonResult Update(TruckManufacturerViewModel truckManufacturer) { try { var truckManufacturerUpdateResult = _truckManufacturerService.ValidateTruckManufacturerToUpdate(truckManufacturer); return(Json(truckManufacturerUpdateResult, JsonRequestBehavior.AllowGet)); } catch (Exception) { throw; } }
public JsonResult SearchManufacturerName(TruckManufacturerViewModel truckManufacturer) { try { var truckManufacturerSearchResult = _truckManufacturerService.SearchTruckManufacturer(truckManufacturer); return(Json(truckManufacturerSearchResult, JsonRequestBehavior.AllowGet)); } catch (Exception) { throw; } }
public void Test_ManufacturerDescriptionIsNotEmptyOrNullAndContainsOnlyLettersOrNumbersAndDoesNotExistAlreadyInDB_RecordUpdated() { //Arrange = IRepository <TruckManufacturer> _truckManufacturerContext = new Mocks.MockTruckCheckUpContext <TruckManufacturer>(); ILogger _logger = new MockTruckCheckUpLogger(); TruckManufacturerService truckManufacturerService = new TruckManufacturerService(_truckManufacturerContext, _logger); truckManufacturerService.ValidateTruckManufacturerToAdd( new TruckManufacturerViewModel() { Id = "1", Description = "Chevrolet" }); var manufacturerViewModel = new TruckManufacturerViewModel() { Id = "1", Description = "Chevrolet" }; var manufacturerSearchResult = truckManufacturerService.SearchTruckManufacturer(manufacturerViewModel); var manufacturerToUpdateViewModel = new TruckManufacturerViewModel() { Id = manufacturerSearchResult.Id, Description = "Chevy" }; if (!string.IsNullOrEmpty(manufacturerToUpdateViewModel.Description)) { if (truckManufacturerService.ValidateManufacturerString(manufacturerToUpdateViewModel.Description)) { if (!truckManufacturerService.RetrieveTruckManufacturerName(manufacturerToUpdateViewModel.Description)) { truckManufacturerService.UpdateTruckManufacturerData(manufacturerToUpdateViewModel, new Log4NetLogger()); } } } //Act var manufacturerToSearchAfterUpdate = new TruckManufacturerViewModel(); manufacturerToSearchAfterUpdate.Description = "Chevy"; var result = truckManufacturerService.SearchTruckManufacturer(manufacturerToSearchAfterUpdate); //Assert Assert.AreEqual("Chevy", result.Description); }
public TruckManufacturerViewModel ValidateTruckManufacturerToAdd(TruckManufacturerViewModel truckManufacturer) { if (!string.IsNullOrEmpty(truckManufacturer.Description)) { //Verify that only letters and numbers in string manufacturer entered by user if (!ValidateManufacturerString(truckManufacturer.Description)) { truckManufacturer.IsValid = false; } else { //Verify whether the manufacturer is already in DB truckManufacturer.ExistInDB = RetrieveTruckManufacturerName(truckManufacturer.Description); if (!truckManufacturer.ExistInDB) { SaveNewTruckManufacturerData(truckManufacturer, new Log4NetLogger()); } } } return(truckManufacturer); }
public TruckManufacturerViewModel ValidateTruckManufacturerToUpdate(TruckManufacturerViewModel truckManufacturer) { if (!string.IsNullOrEmpty(truckManufacturer.Description)) { //Verify that only letters and numbers in string manufacturer entered by user if (!ValidateManufacturerString(truckManufacturer.Description)) { truckManufacturer.IsValid = false; } else { //Verify whether the manufacturer is already in DB and save value //in object to return to View for validation purposes truckManufacturer.ExistInDB = RetrieveTruckManufacturerName(truckManufacturer.Description); if (!truckManufacturer.ExistInDB) { UpdateTruckManufacturerData(truckManufacturer, new Log4NetLogger()); } } } return(truckManufacturer); }