Example #1
0
        /// <summary>
        /// Generates a base Coffee drink ordered
        /// </summary>
        /// <param name="drinkDescription"></param>
        /// <returns></returns>
        public override IDrink GetDrink(AcuCafeEnum.EnumDrinks drinkDescription)
        {
            IDrink oDrink;

            try
            {
                switch (drinkDescription)
                {
                case AcuCafeEnum.EnumDrinks.EXPRESSO:
                    oDrink = new Expresso();
                    break;

                case AcuCafeEnum.EnumDrinks.RISTRETTO:
                    oDrink = new Ristretto();
                    break;

                case AcuCafeEnum.EnumDrinks.LUNGO:
                    oDrink = new Lungo();
                    break;

                default:
                    throw new Exception("Undefine Drink. We can not manage the order.");
                }

                return(oDrink);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Example #2
0
        public void RistrettoClass_Countructor_ShouldInitializeObjectCorrectly()
        {
            // Arrange
            var coffeeSize = CoffeSizeType.Medium;

            // Act
            var obj = new Ristretto(coffeeSize);

            // Assert
            Assert.That(obj, Is.InstanceOf <Ristretto>());
        }
Example #3
0
        public void RistrettoClass_FullDescriptionProperty_ShouldExists()
        {
            // Arrange
            var coffeeSize = CoffeSizeType.Medium;

            // Act
            var obj = new Ristretto(coffeeSize);

            // Assert
            Assert.That(obj, Has.Property("FullDescription"));
        }
Example #4
0
        public void RistrettoClass_ShouldInheritCoffeeAbstractClass()
        {
            // Arrange
            var coffeeSize = CoffeSizeType.Medium;

            // Act
            var obj = new Ristretto(coffeeSize);

            // Assert
            Assert.That(obj, Is.InstanceOf <Coffee>());
        }
Example #5
0
        public void RistrettoClass_ShouldImplementICoffeeInterface()
        {
            // Arrange
            var coffeeSize = CoffeSizeType.Medium;

            // Act
            var obj = new Ristretto(coffeeSize);

            // Assert
            Assert.That(obj, Is.InstanceOf <ICoffee>());
        }
Example #6
0
        public void RistrettoClass_Countructor_ShouldSetSizeCorrectly()
        {
            // Arrange
            var coffeeSize   = CoffeSizeType.Medium;
            var expectedSize = coffeeSize.ToString();

            // Act
            var obj = new Ristretto(coffeeSize);

            // Assert
            Assert.That(obj.FullDescription, Does.Contain(expectedSize));
        }
Example #7
0
        public void RistrettoClass_IdProperty_ShouldReturnCorrectId()
        {
            // Arrange
            var coffeeSize = CoffeSizeType.Medium;
            var expectedId = "RIS";

            // Act
            var obj = new Ristretto(coffeeSize);

            // Assert
            Assert.That(obj, Has.Property("Id").EqualTo(expectedId));
        }
Example #8
0
        public void RistrettoClass_CostMethod_ShouldReturnCorrectPriceBasedOnCoffeSize(CoffeSizeType coffeeSize)
        {
            // Arrange
            var basePrice    = 1.50m;
            var expectedCost = basePrice + (((int)coffeeSize / 100) * basePrice);

            // Act
            var obj = new Ristretto(coffeeSize);

            // Assert
            Assert.That(obj.Cost(), Is.EqualTo(expectedCost));
        }
Example #9
0
        public void RistrettoClass_FullDescriptionProperty_ShouldReturnCorrectFullDescription()
        {
            // Arrange
            var coffeeSize              = CoffeSizeType.Medium;
            var expectedDescription     = "Ristretto";
            var expectedSize            = coffeeSize.ToString();
            var expectedFullDescription = expectedSize + " " + expectedDescription;

            // Act
            var obj = new Ristretto(coffeeSize);

            // Assert
            Assert.That(obj, Has.Property("FullDescription").EqualTo(expectedFullDescription));
        }