public void FahClientMessages_IsHeartbeatOverdue_ReturnsFalseWhenThereIsNoHeartbeatMessage()
        {
            // Arrange
            var messages = new FahClientMessages(null);
            // Act
            var overdue = messages.IsHeartbeatOverdue();

            // Assert
            Assert.IsFalse(overdue);
        }
        public async Task FahClientMessages_IsHeartbeatOverdue_ReturnsTrueWhenHeartbeatHasNotBeenReceivedAfterLongPeriodOfTime()
        {
            // Arrange
            var messages  = new FahClientMessages(null);
            var heartbeat = new FahClientMessage(new FahClientMessageIdentifier(FahClientMessageType.Heartbeat, DateTime.UtcNow.Subtract(TimeSpan.FromMinutes(5))), null);
            await messages.UpdateMessageAsync(heartbeat);

            // Act
            var overdue = messages.IsHeartbeatOverdue();

            // Assert
            Assert.IsTrue(overdue);
        }