public void Return_String_Representation_Of_Input_Int(int number) { var factory = new UpdateStrategyFactory(); var strategy = factory.Create(number); var conversionService = new NumberConversionService(strategy); var output = conversionService.Convert(); Assert.AreEqual(number.ToString(), output); }
public void Return_FizzBuzz_For_Number_Divisible_By_Three_And_Five(int number) { var factory = new UpdateStrategyFactory(); var strategy = factory.Create(number); var conversionService = new NumberConversionService(strategy); var output = conversionService.Convert(); Assert.AreEqual("FizzBuzz", output); }
public void UpdateQuality() { foreach (var item in Items) { // Since updateStrategy does only one thing now, it looks weird. // But the idea is that the factory would construct an appropriate UpdateStrategy and caller would // use it as he wants. var updateStrategy = UpdateStrategyFactory.GetUpdateStrategyForItem(item); updateStrategy.Update(item); } }
static void Main(string[] args) { for (int i = 1; i < 101; i++) { var factory = new UpdateStrategyFactory(); var strategy = factory.Create(i); var conversionService = new NumberConversionService(strategy); var output = conversionService.Convert(); Console.WriteLine(i); } }