public async Task <IHttpActionResult> PutSugarLevel(int id, SugarLevel sugarLevel) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != sugarLevel.Id) { return(BadRequest()); } db.Entry(sugarLevel).State = EntityState.Modified; try { await db.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!SugarLevelExists(id)) { return(NotFound()); } else { throw; } } return(StatusCode(HttpStatusCode.NoContent)); }
public void Test(CoffeeType coffeeType, SugarLevel sugarLevel, Size size) { var money = coffeeType.Price(); CoffeeMachine.SelectCoffee(coffeeType); CoffeeMachine.InsertMoney(money); CoffeeMachine.WorkStatus.Should().Be(WorkStatus.Customization); CoffeeMachine.SelectSugarLevel(sugarLevel); CoffeeMachine.SelectSize(size); CoffeeMachine.WorkStatus.Should().Be(WorkStatus.ReadyForMakingCoffee); CoffeeMachine.Run(); CoffeeMachine.WorkStatus.Should().Be(WorkStatus.TakeYourCoffee); CoffeeMachine.GetChange().Should().Be(0); var coffee = CoffeeMachine.EjectCup(); coffee.Should().BeEquivalentTo(new Coffee(coffeeType, sugarLevel, size)); CoffeeMachine.WorkStatus.Should().Be(WorkStatus.InsertMoneyOrSelectCoffee); CoffeeMachine.Size.Should().Be(Size.Unknown); CoffeeMachine.SugarLevel.Should().Be(SugarLevel.Unknown); CoffeeMachine.CoffeeType.Should().Be(CoffeeType.Unknown); }
public void CorrectWorkTest() { const int money = 500; const CoffeeType type = CoffeeType.Cappucchino; const SugarLevel sugarLevel = SugarLevel.Medium; const Size size = Size.Large; CoffeeMachine.SelectCoffee(type); CoffeeMachine.InsertMoney(money); CoffeeMachine.WorkStatus.Should().Be(WorkStatus.Customization); CoffeeMachine.SelectSugarLevel(sugarLevel); CoffeeMachine.SelectSize(size); CoffeeMachine.WorkStatus.Should().Be(WorkStatus.ReadyForMakingCoffee); CoffeeMachine.Run(); CoffeeMachine.WorkStatus.Should().Be(WorkStatus.TakeYourCoffee); CoffeeMachine.GetChange().Should().Be(money - type.Price()); var coffee = CoffeeMachine.EjectCup(); coffee.Should().BeEquivalentTo(new Coffee(type, sugarLevel, size)); CoffeeMachine.WorkStatus.Should().Be(WorkStatus.InsertMoneyOrSelectCoffee); CoffeeMachine.Size.Should().Be(Size.Unknown); CoffeeMachine.SugarLevel.Should().Be(SugarLevel.Unknown); CoffeeMachine.CoffeeType.Should().Be(CoffeeType.Unknown); }
public void GetChocolate() { int iClientId = GetRandomID(1, 10); SugarLevel iSugarLevel = GetRandomSugar(); var responseDrink = client.GetMeADrink(iClientId, TheMachineACafe.DrinkType.CHOCOLATE, iSugarLevel, false); Assert.AreEqual(responseDrink.MyDrinkType, TheMachineACafe.DrinkType.CHOCOLATE); Assert.AreEqual(responseDrink.MySugarLevel, iSugarLevel); }
public async Task <IHttpActionResult> Get(int id) { SugarLevel sugarLevel = new SugarLevel(); if (sugarLevel == null) { return(NotFound()); } return(Ok(sugarLevel)); }
public async Task <IHttpActionResult> GetSugarLevel(int id) { SugarLevel sugarLevel = await db.SugarLevels.FindAsync(id); if (sugarLevel == null) { return(NotFound()); } return(Ok(sugarLevel)); }
public async Task <IHttpActionResult> PostSugarLevel(SugarLevel sugarLevel) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } db.SugarLevels.Add(sugarLevel); await db.SaveChangesAsync(); return(CreatedAtRoute("DefaultApi", new { id = sugarLevel.Id }, sugarLevel)); }
public override void SelectSugarLevel(SugarLevel sugarLevel) { if (WorkStatus == WorkStatus.InsertMoneyOrSelectCoffee) { throw new CoffeeMachineException("You can't select sugar level. First, select coffee type and insert money"); } SugarLevel = sugarLevel; if (SugarLevel != SugarLevel.Unknown && Size != Size.Unknown) { WorkStatus = WorkStatus.ReadyForMakingCoffee; } }
public Drink GetMeADrink(int UserID, DrinkType requestedDrinkType, SugarLevel requestedSugarLevel, bool havingACup) { if (requestedDrinkType == DrinkType.None) { throw new ArgumentNullException("No Proper Drink Selected. Please make your choise !"); } var oderedDrink = new Drink(requestedDrinkType, requestedSugarLevel, havingACup); coffeeOrders.AddOrUpdate(UserID, oderedDrink, (key, oldvalue) => oldvalue = oderedDrink); PersistOrder(UserID, oderedDrink); return(oderedDrink); }
public async Task <IHttpActionResult> DeleteSugarLevel(int id) { SugarLevel sugarLevel = await db.SugarLevels.FindAsync(id); if (sugarLevel == null) { return(NotFound()); } db.SugarLevels.Remove(sugarLevel); await db.SaveChangesAsync(); return(Ok(sugarLevel)); }
public virtual void SelectSugarLevel(SugarLevel sugarLevel) { if (WorkStatus == WorkStatus.InsertMoneyOrSelectCoffee) { throw new CoffeeMachineException("You can't select sugar level. First, select coffee type and insert money"); } if (WorkStatus == WorkStatus.TakeYourCoffee) { throw new CoffeeMachineException("You can't select sugar level. First, take a cup from the coffee machine"); } SugarLevel = sugarLevel; if (SugarLevel != SugarLevel.Unknown && Size != Size.Unknown) { WorkStatus = WorkStatus.ReadyForMakingCoffee; } }
public override void SelectSugarLevel(SugarLevel sugarLevel) { throw new CoffeeMachineException("Unexpected error"); }
public Drink(DrinkType requestedDrinkType, SugarLevel _requestedSugarLevel, bool havingACup) { _drinkType = requestedDrinkType; _sugarLevel = _requestedSugarLevel; _withNoCup = havingACup; }
public Coffee(CoffeeType coffeeType, SugarLevel sugarLevel, Size size) { Type = coffeeType; Sugar = sugarLevel; Size = size; }