public void SendAndReadOneRow_GeneralMessage_Pass()
        {
            //Arrange
            GeneralMessage message   = new GeneralMessage(receiverID, 2, GetDateTime.GetUTCNow(), "Test message");
            bool           isSuccess = false;

            //Act
            try
            {
                RoomAid.QueueConsumer.QueueConsumer.SendToDB(message); // using directive doesn't work for some reason
                List <string> inboxContent          = (List <string>)_messageDAO.RetrieveOneRow(new SqlCommand("SELECT * FROM dbo.InboxMessages"));
                string        generalMessageContent = _messageDAO.RetrieveOneColumn(new SqlCommand("SELECT MessageBody FROM dbo.GeneralMessages")).ToString();

                // InboxMessage[0..6] = [ReceiverID, MessageID, PrevMessageID, SenderID, IsRead, SentDate, IsGeneral]
                GeneralMessage incomingMessage = new GeneralMessage(Int32.Parse(inboxContent[0]),
                                                                    Int32.Parse(inboxContent[2]),
                                                                    Int32.Parse(inboxContent[3]),
                                                                    DateTime.Parse(inboxContent[5]),
                                                                    generalMessageContent)
                {
                    IsRead = bool.Parse(inboxContent[4])
                };

                if (incomingMessage.SenderID == message.SenderID &&
                    incomingMessage.ReceiverID == message.ReceiverID &&
                    incomingMessage.PrevMessageID == message.PrevMessageID &&
                    incomingMessage.IsRead == message.IsRead &&
                    incomingMessage.SentDate.ToString().Equals(message.SentDate.ToString()) && // HACK: SQL & .NET DateTime precision is off, so comparing strings
                    incomingMessage.MessageBody.Equals(message.MessageBody) &&
                    incomingMessage.IsGeneral == true)
                {
                    isSuccess = true;
                }
            }
            catch (Exception e)
            {
                Trace.WriteLine(e.ToString());
            }

            //Assert
            Assert.IsTrue(isSuccess);
        }