public static void RunSimplePublisherReceiverTest()
        {
            SimpleMessagePublisher <ServerMessageType> server = new SimpleMessagePublisher <ServerMessageType>(
                "localhost"
                , "CommonTools.Testing.Publisher"
                , "direct"
                , false
                , new ConsoleLogger());

            SimpleMessageReceiver <ServerMessageType> client = new SimpleMessageReceiver <ServerMessageType>(
                "localhost"
                , "CommonTools.Testing.Publisher"
                , "direct"
                , false
                , new ConsoleLogger());

            server.Open(false);
            client.Open(false);

            client.MessageReceived += new EventHandler <MessageEventArgs <ServerMessageType> >(client_MessageReceived);

            server.SendMessage(ServerMessageType.Plain);
            server.SendMessage(ServerMessageType.SomeObject, new SimpleObject(99));

            Console.ReadLine();

            client.Dispose();
            server.Dispose();
        }
        public static void RunSimplePublisherReceiverShutdownTest()
        {
            SimpleMessagePublisher <ServerMessageType> server = new SimpleMessagePublisher <ServerMessageType>(
                "localhost"
                , "CommonTools.Testing.Publisher"
                , "direct"
                , false
                , new ConsoleLogger());

            SimpleMessageReceiver <ServerMessageType> client = new SimpleMessageReceiver <ServerMessageType>(
                "localhost"
                , "CommonTools.Testing.Publisher"
                , "direct"
                , false
                , new ConsoleLogger());

            server.Open(false);
            client.Open(false);

            client.MessageReceived += new EventHandler <MessageEventArgs <ServerMessageType> >(client_MessageReceived);

            server.SendMessage(ServerMessageType.Plain);
            server.SendMessage(ServerMessageType.SomeObject, new SimpleObject(99));

            Console.WriteLine("Connection established and test messages sent, waiting for manual RabbitMQ service shutdown");
            Console.ReadLine();

            Console.WriteLine("Trying to send message...");
            server.SendMessage(ServerMessageType.Plain);

            Console.WriteLine("Manually restart and wait...");
            Console.ReadLine();

            server.SendMessage(ServerMessageType.Plain);
            server.SendMessage(ServerMessageType.SomeObject, new SimpleObject(99));

            client.Dispose();
            server.Dispose();
        }