static void Main(string[] args) { var consoleOutputManager = new ConsoleOutputManager(); var timeProvider = new TimeProvider(); var messageRepository = new MessagesRepository(); var followingRepository = new FollowingRepository(); consoleOutputManager.WriteLine("Welcome to RetroTwitter"); consoleOutputManager.WriteLine(); ShowInstructions(consoleOutputManager); consoleOutputManager.WriteLine(); consoleOutputManager.WriteLine("What do you want to do today?"); var commandFactory = new CommandCreatorsFactory(consoleOutputManager, timeProvider, messageRepository, followingRepository); while (true) { consoleOutputManager.Write(">"); var commandString = consoleOutputManager.ReadLine(); var command = commandFactory.ParseStringToCommand(commandString); if (command != null) { command.Execute(); } else { consoleOutputManager.WriteLine("Sorry, I didn't catch that."); } } consoleOutputManager.WriteLine("RetroTwitter is terminating and all the collected data are being destroyed."); // ReSharper disable once FunctionNeverReturns }
public void GetNonExistingUsersOk() { const string user1 = "user_A"; var followingRepository = new FollowingRepository(); var expected1 = new List<string>(); var actual1 = followingRepository.Get(user1).ToList(); CollectionAssert.AreEqual(expected1, actual1); }
public void AddAndGetNewUserOk() { const string user1 = "user_A"; const string user2 = "user_B"; var followingRepository = new FollowingRepository(); followingRepository.Add(user1, user2); var expected = new List<string> { user2 }; var actual = followingRepository.Get(user1).ToList(); CollectionAssert.AreEqual(expected, actual); }
public void AddAndGetTwoNewUsersOk() { const string user1 = "user_A"; const string user2 = "user_B"; const string user3 = "user_C"; var followingRepository = new FollowingRepository(); followingRepository.Add(user1, user3); followingRepository.Add(user2, user3); var expected1 = new List<string> { user3 }; var actual1 = followingRepository.Get(user1).ToList(); CollectionAssert.AreEqual(expected1, actual1); var expected2 = new List<string> { user3 }; var actual2 = followingRepository.Get(user1).ToList(); CollectionAssert.AreEqual(expected2, actual2); }