Пример #1
0
        public void TestHierarchyDelimiterDelete()
        {
            hMailServer.Application application = SingletonProvider <Utilities> .Instance.GetApp();

            hMailServer.Settings settings = _settings;
            settings.IMAPHierarchyDelimiter = "\\";

            hMailServer.Account account = SingletonProvider <Utilities> .Instance.AddAccount(_domain, "*****@*****.**", "test");

            string folderName = "Test\\Test";

            IMAPSimulator oSimulator      = new IMAPSimulator();
            string        sWelcomeMessage = oSimulator.Connect();

            oSimulator.Logon(account.Address, "test");
            Assert.IsTrue(oSimulator.CreateFolder(folderName));
            string listResponse = oSimulator.List();

            Assert.IsTrue(listResponse.Contains("\"Test\\Test\""));
            Assert.IsTrue(listResponse.Contains("\"Test\""));
            Assert.IsTrue(oSimulator.DeleteFolder("Test\\Test"));
            listResponse = oSimulator.List();
            Assert.IsFalse(listResponse.Contains("Test\\Test"));
            Assert.IsTrue(listResponse.Contains("Test"));
            oSimulator.Disconnect();
        }
        public void TestHierarchyDelimiterDelete()
        {
            hMailServer.Application application = SingletonProvider<Utilities>.Instance.GetApp();
            hMailServer.Settings settings = _settings;
            settings.IMAPHierarchyDelimiter = "\\";

            hMailServer.Account account = SingletonProvider<Utilities>.Instance.AddAccount(_domain, "*****@*****.**", "test");

            string folderName = "Test\\Test";

            IMAPSimulator oSimulator = new IMAPSimulator();
            string sWelcomeMessage = oSimulator.Connect();
            oSimulator.Logon(account.Address, "test");
            Assert.IsTrue(oSimulator.CreateFolder(folderName));
            string listResponse = oSimulator.List();
            Assert.IsTrue(listResponse.Contains("\"Test\\Test\""));
            Assert.IsTrue(listResponse.Contains("\"Test\""));
            Assert.IsTrue(oSimulator.DeleteFolder("Test\\Test"));
            listResponse = oSimulator.List();
            Assert.IsFalse(listResponse.Contains("Test\\Test"));
            Assert.IsTrue(listResponse.Contains("Test"));
            oSimulator.Disconnect();
        }
Пример #3
0
        public void TestDelete()
        {
            hMailServer.Account oAccount = SingletonProvider<Utilities>.Instance.AddAccount(_domain, "*****@*****.**", "test");

             IMAPSimulator oSimulator = new IMAPSimulator();

             string sWelcomeMessage = oSimulator.Connect();
             oSimulator.Logon("*****@*****.**", "test");
             Assert.IsFalse(oSimulator.DeleteFolder("DoesNotExist"));
             Assert.IsTrue(oSimulator.CreateFolder("DoesExist"));
             Assert.IsTrue(oSimulator.SelectFolder("DoesExist"));
             oSimulator.Close();
             Assert.IsTrue(oSimulator.DeleteFolder("DoesExist"));
             Assert.IsFalse(oSimulator.SelectFolder("DoesExist"));
        }
Пример #4
0
        public void TestDeleteIMAPFolderNotifications()
        {
            _settings.IMAPIdleEnabled = true;

              hMailServer.Account oAccount = SingletonProvider<Utilities>.Instance.AddAccount(_domain, "*****@*****.**", "test");

              IMAPSimulator oSimulator1 = new IMAPSimulator();
              IMAPSimulator oSimulator2 = new IMAPSimulator();
              oSimulator1.ConnectAndLogon(oAccount.Address, "test");
              oSimulator2.ConnectAndLogon(oAccount.Address, "test");

              oSimulator1.SelectFolder("Inbox");
              oSimulator2.CreateFolder("Mailbox");
              oSimulator2.DeleteFolder("Mailbox");

              SMTPClientSimulator.StaticSend("*****@*****.**", oAccount.Address, "Test", "test");

              POP3Simulator.AssertMessageCount(oAccount.Address, "test", 1);

              string noopResponse = oSimulator1.NOOP() + oSimulator1.NOOP();

              // confirm that the client is notified about this message even though another
              // folder has been dropped by another client.
              Assert.IsTrue(noopResponse.Contains(@"* 1 EXISTS"), noopResponse);
        }
Пример #5
0
        public void TestDeleteSubFolderCheckAPI()
        {
            hMailServer.Application application = SingletonProvider<Utilities>.Instance.GetApp();

              hMailServer.IMAPFolders publicFolders = _settings.PublicFolders;

              Assert.AreEqual(0, publicFolders.Count);

              ;
              hMailServer.Account account1 = SingletonProvider<Utilities>.Instance.AddAccount(_domain, "*****@*****.**", "test");

              hMailServer.IMAPFolder folder = publicFolders.Add("Share1");
              folder.Save();

              Assert.AreEqual(1, publicFolders.Count);

              hMailServer.IMAPFolders mySubFolders = folder.SubFolders;
              Assert.AreEqual(0, mySubFolders.Count);

              hMailServer.IMAPFolderPermission permission = folder.Permissions.Add();
              permission.PermissionAccountID = account1.ID;
              permission.PermissionType = hMailServer.eACLPermissionType.ePermissionTypeUser;
              permission.set_Permission(hMailServer.eACLPermission.ePermissionCreate, true);
              permission.set_Permission(hMailServer.eACLPermission.ePermissionRead, true);
              permission.set_Permission(hMailServer.eACLPermission.ePermissionLookup, true);
              permission.Save();

              IMAPSimulator oSimulator1 = new IMAPSimulator();
              oSimulator1.ConnectAndLogon("*****@*****.**", "test");
              Assert.IsTrue(oSimulator1.CreateFolder("#public.Share1.MySub"));
              Assert.AreEqual(1, mySubFolders.Count);

              permission.set_Permission(hMailServer.eACLPermission.ePermissionDeleteMailbox, true);
              permission.Save();

              Assert.IsTrue(oSimulator1.DeleteFolder("#public.Share1.MySub"));
              Assert.IsFalse(oSimulator1.SelectFolder("#public.Share1.MySub"));

              Assert.AreEqual(0, mySubFolders.Count);
              Assert.AreEqual(1, publicFolders.Count);

              oSimulator1.Disconnect();
        }