private Cooler CreateCooler(Cooler cooler) { IEntityValidator validator = this._entityValidatorFactory.Create(); if (validator.IsValid<Cooler>(cooler)) { this._coolerRepository.Add(cooler); this._coolerRepository.UnitOfWork.Commit(); return cooler; } else throw new ApplicationValidationErrorsException(validator.GetInvalidMessages(cooler)); }
private Cooler UpdateCooler(Cooler currentCooler, Cooler updatedCooler) { // TODO: Make this a factory IEntityValidator validator = this._entityValidatorFactory.Create(); if (validator.IsValid<Cooler>(updatedCooler)) { _coolerRepository.Merge(currentCooler, updatedCooler); _coolerRepository.UnitOfWork.Commit(); return updatedCooler; } else throw new ApplicationValidationErrorsException(validator.GetInvalidMessages(updatedCooler)); }
public void CanInsertBeverageIntoCooler() { Cooler cooler = new Cooler { Id = Guid.NewGuid(), Name = "Test Cooler", MaxCapacity = 5f }; Beverage beverage = new Beverage { Id = Guid.NewGuid(), Name = "Test Bev", Size = 5f }; cooler.Beverages.Add(beverage); this.Manager.AddCooler(cooler); }
public void WillThrowErrorOnExceededCoolerLimit() { Cooler cooler = new Cooler { Id = Guid.NewGuid(), Name = "Test Cooler", MaxCapacity = 5f }; Beverage beverage = new Beverage { Id = Guid.NewGuid(), Name = "Test Bev", Size = 50f }; cooler.Beverages.Add(beverage); this.Manager.AddCooler(cooler); Assert.Fail("Expected an ApplicationValidationErrorsException"); }
public void WillThrowErrorOnInvalidBeverageInsert() { Cooler cooler = new Cooler { Id = Guid.NewGuid(), Name = "Test Cooler", MaxCapacity = 5f, Sealed = true, Iced = false }; Beverage beverage = new Beverage { Id = Guid.NewGuid(), Name = "Test Bev", Size = 50f, NeedsIced = true }; cooler.Beverages.Add(beverage); this.Manager.AddCooler(cooler); Assert.Fail("Expected an ApplicationValidationErrorsException"); }
public void UpdateCooler(Cooler cooler) { Cooler existingCooler = _coolerRepository.Get(cooler.Id); cooler = UpdateCooler(existingCooler, cooler); }
public Cooler AddCooler(Cooler cooler) { return CreateCooler(cooler); }
static void DisplayCoolerInfo(Cooler cooler) { Console.WriteLine("Id: {0}\nName: {1}\nCurrentCapacity: {2}ml\nMax Capacity: {3}ml\nIsIced: {4}\nIsSealed: {5}\nIsCryonized: {6}\n\n", cooler.Id, cooler.Name, cooler.CurrentCapacity, cooler.MaxCapacity, cooler.Iced, cooler.Sealed, cooler.Cryogenized); }