public void Test() { FoodFactory factory = new FoodFactory(); FoodBase f1 = factory.Create("Cheese"); FoodBase f2 = factory.Create("Cheese"); Assert.IsNotNull(f1); Assert.AreEqual <int>(f1.GetHashCode(), f2.GetHashCode()); FoodBase f3 = factory.Create("Capsicum"); Assert.AreNotEqual <int>(f1.GetHashCode(), f3.GetHashCode()); }
static void Main(string[] args) { List <Animal> animals = new List <Animal>(); string command; while ((command = Console.ReadLine()) != "End") { Animal animal = AnimalFactory.Create(command.Split(' ', StringSplitOptions.RemoveEmptyEntries)); animals.Add(animal); Console.WriteLine(animal.ProduceSound()); Food.Food food = FoodFactory.Create(Console.ReadLine().Split(' ', StringSplitOptions.RemoveEmptyEntries)); try { animal.EatFood(food); } catch (ArgumentException ex) { Console.WriteLine(ex.Message); } } animals.ForEach(Console.WriteLine); }
static void Main(string[] args) { List <Animal> animals = new List <Animal>(); string input; while ((input = Console.ReadLine()) != "End") { string[] animalArgs = input.Split(); Animal animal = AnimalFactory.Create(animalArgs); string[] foodArgs = Console.ReadLine().Split(); Food food = FoodFactory.Create(foodArgs); Console.WriteLine(animal.ProduceSound()); try { animal.Eat(food); } catch (Exception ex) { Console.WriteLine(ex.Message); } animals.Add(animal); } foreach (var animal in animals) { Console.WriteLine(animal); } }
public void Execute() { List <Animal> animals = new List <Animal>(); string input = Console.ReadLine(); while (input != "End") { try { string[] animalArgs = input.Split(); Animal animal = AnimalFactory.Create(animalArgs); Console.WriteLine(animal.ProduceSound()); string[] foodArgs = Console.ReadLine().Split(); Food food = FoodFactory.Create(foodArgs); animal.Eat(food); animals.Add(animal); } catch (Exception ex) { Console.WriteLine(ex.Message); } input = Console.ReadLine(); } animals.ForEach(Console.WriteLine); }
public void Run() { string command; while ((command = Console.ReadLine()) != "End") { Animal animal = AnimalFactory.Create(command.Split(' ', StringSplitOptions.RemoveEmptyEntries)); animals.Add(animal); Console.WriteLine(animal.ProduceSound()); Food food = FoodFactory.Create(Console.ReadLine().Split(' ', StringSplitOptions.RemoveEmptyEntries)); try { animal.EatFood(food); } catch (ArgumentException ae) { Console.WriteLine(ae.Message); } } animals.ForEach(Console.WriteLine); }
static void Main(string[] args) { Gandalf gandalf = new Gandalf(); string input = Console.ReadLine(); if (input.Length > 1000) { throw new Exception("The characters in the input string will be no more than: 1000"); } string[] foods = input.Split(" ", StringSplitOptions.RemoveEmptyEntries); for (int i = 0; i < foods.Length; i++) { gandalf.Eat(FoodFactory.Create(foods[i])); } Console.WriteLine(gandalf.Happiness); Console.WriteLine(gandalf.Mood.Name); Console.ReadKey(); }
public static void Main(string[] args) { int index = 0; var animalType = ""; List <Animal> animals = new List <Animal>(); while (true) { var input = Console.ReadLine(); if (input == "End") { break; } var splittedInput = input.Split(); if (index % 2 == 0) { var currentAnimal = AnimalFactory.Create(splittedInput); animals.Add(currentAnimal); animalType = currentAnimal.GetType().Name; } else { try { var currentFood = FoodFactory.Create(splittedInput); var currentAnimal = animals[animals.Count - 1]; Console.WriteLine(currentAnimal.SayHello()); currentAnimal.Eat(currentFood); } catch (ArgumentException ae) { Console.WriteLine(ae.Message); } } index++; } foreach (var animal in animals) { Console.WriteLine(animal.ToString()); } }
public static void Run() { List <Animal> animals = new List <Animal>(); var dog = new Dog("Beto", 25, "John House"); Animal animal = AnimalFactory.Create(dog); Fruit fruit = new Fruit(3); Food food = FoodFactory.Create(fruit); try { animal.Eat(food); } catch (Exception ex) { Console.WriteLine(ex.Message); } animals.Add(animal); Tiger tiger = new Tiger("King", 650, "Forest", "Big Cat"); animal = AnimalFactory.Create(tiger); Meat meat = new Meat(30); food = FoodFactory.Create(meat); try { animal.Eat(food); } catch (Exception ex) { Console.WriteLine(ex.Message); } animals.Add(animal); foreach (var item in animals) { Console.WriteLine(item); Console.WriteLine("Sound: " + item.ProduceSound()); Console.WriteLine("=============================================="); } }
public static void Main(string[] args) { List <Animal> animals = new List <Animal>(); while (true) { string command = Console.ReadLine(); if (command == "End") { break; } string[] animalArgs = command.Split(); var animal = AnimalFactory.Create(animalArgs); animals.Add(animal); string[] foodArgs = Console.ReadLine().Split(); var food = FoodFactory.Create(foodArgs); Console.WriteLine(animal.AskFood()); try { animal.Eat(food); } catch (Exception ex) { Console.WriteLine(ex.Message); } } foreach (var animal in animals) { Console.WriteLine(animal); } }
static void Main(string[] args) { string command = string.Empty; string command2 = string.Empty; List <Animal> animals = new List <Animal>(); while ((command = Console.ReadLine()) != "End" && (command2 = Console.ReadLine()) != "End") { string[] animalElements = command .Split(" ", StringSplitOptions.RemoveEmptyEntries); Animal currentAnimal = AnimalFactory.Create(animalElements); animals.Add(currentAnimal); string[] foodElements = command2 .Split(" ", StringSplitOptions.RemoveEmptyEntries); Food currentFood = FoodFactory.Create(foodElements); Console.WriteLine(currentAnimal.ProduceSound()); try { currentAnimal.Feed(currentFood); } catch (ArgumentException ae) { Console.WriteLine(ae.Message); } } foreach (var animal in animals) { Console.WriteLine(animal); } }
public static void Main() { string input = Console.ReadLine(); List <Animal> animals = new List <Animal>(); while (input != "End") { string[] animalInfo = input.Split(); Animal animal = AnimalFactory.Create(animalInfo); string[] foodInfo = Console.ReadLine().Split(); Food food = FoodFactory.Create(foodInfo); Console.WriteLine(animal.AskForFood()); try { animal.Eat(food); } catch (Exception ex) { Console.WriteLine(ex.Message); } animals.Add(animal); input = Console.ReadLine(); } foreach (Animal animal in animals) { Console.WriteLine(animal); } }