private static void AssertAliceTimelineIsCorrect(CommandResult aliceTimeline) { aliceTimeline.Messages.Should().HaveCount(3); aliceTimeline.Messages.First().Should().Be("Third message (30 seconds ago)"); aliceTimeline.Messages.Skip(1).Take(1).First().Should().Be("Second message (1 minute ago)"); aliceTimeline.Messages.Skip(2).Take(1).First().Should().Be("First message (5 minutes ago)"); }
private static void AssertAliceWallIsCorrect(CommandResult aliceWall) { aliceWall.Messages.Should().HaveCount(5); aliceWall.Messages.First().Should().Be("Bob - Second message (now)"); aliceWall.Messages.Skip(1).Take(1).First().Should().Be("Alice - Third message (30 seconds ago)"); aliceWall.Messages.Skip(2).Take(1).First().Should().Be("Alice - Second message (1 minute ago)"); aliceWall.Messages.Skip(3).Take(1).First().Should().Be("Bob - First message (4 minutes ago)"); aliceWall.Messages.Skip(4).Take(1).First().Should().Be("Alice - First message (5 minutes ago)"); }
public CommandResult ExecuteCommand(string commandLine, DateTime postingTime) { CommandResult commandResult = new CommandResult(); foreach (CommandDescriptor commandDescriptor in commandDescriptors) { if (commandDescriptor.CanHandle(commandLine)) { Command command = commandDescriptor.GetCommand(codurer, commandLine); commandResult = command.Execute(postingTime); } } return commandResult; }
private static void AssertBobTimelineIsCorrect(CommandResult bobTimeline) { bobTimeline.Messages.Should().HaveCount(2); bobTimeline.Messages.First().Should().Be("Second message (now)"); bobTimeline.Messages.Skip(1).Take(1).First().Should().Be("First message (4 minutes ago)"); }