private void PrintNext(FizzBuzzContext context) { var feature = _featureToggles.GetFeatureToggles(context); if (feature.UseNewColorScheme) { Console.ForegroundColor = ConsoleColor.Yellow; } else { Console.ForegroundColor = ConsoleColor.Gray; } bool fizz, buzz; if (fizz = context.Count % 3 == 0) { Console.Write("Fizz"); } if (buzz = context.Count % 5 == 0) { Console.Write("Buzz"); } if (!fizz && !buzz) { Console.Write(context.Count); } Console.WriteLine(); context.Count++; }
public Task StartAsync(CancellationToken cancellationToken) { var context = new FizzBuzzContext { Count = 1 }; _timer = new Timer(state => PrintNext((FizzBuzzContext)state), context, 1000, 1000); return(Task.CompletedTask); }