Beispiel #1
0
        public void TestUpdateSubjectOnMessageWithNoMessageWideCharacterSet()
        {
            Account account = SingletonProvider <TestSetup> .Instance.AddAccount(_domain, "*****@*****.**", "test");

            string script = "Sub OnAcceptMessage(oClient, oMessage) " + Environment.NewLine +
                            " oMessage.Subject = \"[ov]\" + oMessage.Subject " + Environment.NewLine +
                            " oMessage.Save() " + Environment.NewLine +
                            "End Sub" + Environment.NewLine + Environment.NewLine;

            Scripting scripting = _settings.Scripting;

            File.WriteAllText(scripting.CurrentScriptFile, script);
            scripting.Enabled = true;
            scripting.Reload();
            Assert.IsEmpty(scripting.CheckSyntax());

            string body = @"From: <*****@*****.**>" + Environment.NewLine +
                          "Subject: =?windows-1251?B?yuDr7Pvq7uLzIMji4O3zIC0g7/Do7OXwICLy5fXt6Pfl8eru4+4g8OX4?=" +
                          Environment.NewLine +
                          "   =?windows-1251?B?5e3o/yIgW0Z3ZDog0tAg4uXw8ejoIDEuMl0=?=" + Environment.NewLine +
                          Environment.NewLine +
                          "Hej!" + Environment.NewLine;


            SmtpClientSimulator.StaticSendRaw("*****@*****.**", "*****@*****.**", body);

            Pop3ClientSimulator.AssertMessageCount(account.Address, "test", 1);

            CustomAsserts.AssertFolderMessageCount(account.IMAPFolders[0], 1);

            string subject = account.IMAPFolders[0].Messages[0].Subject;
        }
Beispiel #2
0
        public void TestAddTextDuringSending()
        {
            Account oAccount1 = SingletonProvider <TestSetup> .Instance.AddAccount(_domain, "*****@*****.**", "test");

            // Send a message to the account.
            var oMessage = new hMailServer.Message();

            Assert.AreEqual(0, oMessage.State);

            Scripting scripting = SingletonProvider <TestSetup> .Instance.GetApp().Settings.Scripting;

            string signature = "MySignature";

            string script = "Sub OnAcceptMessage(oClient, oMessage) " + Environment.NewLine +
                            " Call EventLog.Write(\"Subject:\" +oMessage.Subject)" + Environment.NewLine +
                            " Call EventLog.Write(\"Date:\" +oMessage.Date)" + Environment.NewLine +
                            " Call EventLog.Write(\"Body:\" +oMessage.Body)" + Environment.NewLine +
                            " oMessage.Body = oMessage.Body & \"" + signature + "\" " + Environment.NewLine +
                            " oMessage.Save() " + Environment.NewLine +
                            "End Sub" + Environment.NewLine + Environment.NewLine;

            File.WriteAllText(scripting.CurrentScriptFile, script);
            scripting.Enabled = true;
            scripting.Reload();
            Assert.IsEmpty(scripting.CheckSyntax());

            // Send the message.
            var recipients = new List <string>();

            recipients.Add("*****@*****.**");
            SmtpClientSimulator.StaticSend("*****@*****.**", recipients, "Hej", "Välkommen till verkligheten");

            // Check that the message exists
            string message = Pop3ClientSimulator.AssertGetFirstMessageText(oAccount1.Address, "test");

            Assert.IsNotEmpty(message);
            Assert.IsTrue(message.Contains(signature));
            Assert.Less(0, message.IndexOf("Hej"));
        }