Beispiel #1
0
        static void Main(string[] args)
        {
            Miles             miles      = new Miles("Miles");
            Darryl            DMoney     = new Darryl("D$");
            List <IDeveloper> developers = new List <IDeveloper>();
            Coffee            coffee     = miles.MakeCoffee();

            developers.Add(miles);
            developers.Add(DMoney);
            developers.ForEach(developer =>
            {
                if (developer is Person)
                {
                    // NOTE Two different ways of casting to a type
                    Person p      = developer as Person;
                    Person person = (Person)developer;
                    System.Console.WriteLine($"Hi my name is {p.Name}");
                }
                if (developer is IBarista)
                {
                    IBarista selfServingBarista = (IBarista)developer;
                    Coffee selfMadeCoffee       = selfServingBarista.MakeCoffee();
                    developer.WriteCodez(selfMadeCoffee);
                }
                developer.WriteCodez(coffee);
            });
        }
        public BaristaCalculateCostTest()
        {
            var factory = new MockRepository(MockBehavior.Loose);

            _coffee  = factory.Create <ICoffee>();
            _io      = factory.Create <IInputOutput>();
            _barista = new Barista(_io.Object, _coffee.Object);
        }