public void Test()
        {
            string A = "*****@*****.**";
            string B = "*****@*****.**";
            string C = "*****@*****.**";
            string D = "*****@*****.**";

            //            FilteringSmtpClient client = new FilteringSmtpClient(new TestSmtpClient(), "*****@*****.**", new string[] {B, A } );
            FilteringSmtpClient client = new FilteringSmtpClient(new TestSmtpClient());

            MailMessage test = new MailMessage();
            test.To.Add(A);
            test.To.Add(B);
            test.To.Add(C);

            test.CC.Add(B);
            test.CC.Add(C);

            test.Bcc.Add(C);
            test.Bcc.Add(A);

            client.RemoveNonWhitelistedRecipients(test);

            Debug.Assert(test.To.Count == 2);
            Debug.Assert(test.To.Contains(new MailAddress(A)));
            Debug.Assert(test.To.Contains(new MailAddress(B)));

            Debug.Assert(test.CC.Count == 1);
            Debug.Assert(test.CC.Contains(new MailAddress(B)));

            Debug.Assert(test.Bcc.Count == 1);
            Debug.Assert(test.Bcc.Contains(new MailAddress(A)));
        }
        public void TestCasing()
        {
            string A = "*****@*****.**";
            string a = "*****@*****.**";

            FilteringSmtpClient client = new FilteringSmtpClient(new TestSmtpClient());

            MailMessage test = new MailMessage();
            test.To.Add(A);

            client.RemoveNonWhitelistedRecipients(test);

            Debug.Assert(test.To.Count == 1);
            Debug.Assert(test.To.Contains(new MailAddress(a)));
        }