예제 #1
0
        public void LogInSendEmailLogOut_LogInChechThatEmailIsSent()
        {
            // IHomePage _homePage = new HomePageDecorator(new HomePage());

            _logInform = _homePage.OpenLoginForm();

            //Log in as first user
            _logInform.LogInToEmailBox(Constants.Sender, Constants.Password);

            //Verify that login is successful
            _navigationPanel = new MainNavigationPanel();

            bool isFirstLoginSuccessfull = _navigationPanel.IsElementVisible(_navigationPanel.InboxLink);

            Assert.IsTrue(isFirstLoginSuccessfull, $"Login of first user '{Constants.Sender}' was not successful");

            //Write and send an email
            _mainEmailBoxPage.SendEmail(Constants.Recipient, Constants.Message);

            //Verify that email is in sent mail box
            _navigationPanel.SentMailLink.Click();

            _sentMailPage = new SentMailPage();

            bool isEmailInSentBox = _sentMailPage.IsElementVisible(_sentMailPage.RecipientName);

            Assert.IsTrue(isEmailInSentBox, "Email was not sent and is not resent in Sent Mail box");

            _logInform = _mainEmailBoxPage.SignOut();

            _logInform.LogInToEmailBox(Constants.Recipient, Constants.Password);

            //Verify that login is successful
            bool isSecondLoginSuccessfull = _navigationPanel.InboxLink.Displayed;

            Assert.IsTrue(isSecondLoginSuccessfull, $"Login of second user '{Constants.Recipient}' was not successful");

            //Verify that email is in Inbox
            bool isEmailInInbox = _sentMailPage.IsElementVisible(_sentMailPage.SenderName);

            Assert.IsTrue(isEmailInInbox, $"Email is not displayed in Inbox");

            //Drag&drop email to trash
            _mainEmailBoxPage.DeleteEmail(Constants.SenderName);

            //Verify that email is in the trash
            _navigationPanel.TrashButton.Click();

            _trashPage = new TrashPage();

            bool isEmailInTrash = _trashPage.IsElementVisible(_trashPage.SenderName);

            Assert.IsTrue(isEmailInInbox, $"Email is not displayed in Trash");
        }
예제 #2
0
        public async Task TestMethod1()
        {
            EnterPage.ClickCompose();
            ComposeMailPage.InputToField(TestConfiguration.Email);
            ComposeMailPage.InputSubjectField(TestConfiguration.MailSubject);
            ComposeMailPage.InputMessageField(TestConfiguration.Message);
            ComposeMailPage.ClickSendButton();
            EnterPage.GoToSendFolder();
            SentMailPage.OpenMail();

            Assert.AreEqual(OpenedMailPage.GetSubjectText(), TestConfiguration.MailSubject, "Wrong subject");
            Assert.AreEqual(OpenedMailPage.GetMessageText(), TestConfiguration.Message, "Wrong message");

            OpenedMailPage.DeleteMail();
        }
예제 #3
0
        public void LoginToGmailAndSendNewEmailTest()
        {
            LoginPage gmailLoginPage = new LoginPage();

            gmailLoginPage.OpenPageUrl();
            gmailLoginPage.LoginToMailbox("*****@*****.**", "mikeqwerty123");

            InboxPage gmailInboxPage = new InboxPage();

            gmailInboxPage.SendNewEmail("*****@*****.**", "Hello Desktop Automation Course", "This mail was generated by C# code");
            //gmailInboxPage.SendNewEmail("*****@*****.**", "Hello Desktop Automation Course", "This mail was generated by C# code");
            //gmailInboxPage.SendNewEmail("[email protected] [email protected]", "Hello Desktop Automation Course", "This mail was generated by C# code");
            gmailInboxPage.GoToSentMailSection();

            SentMailPage sentMailPage = new SentMailPage();

            Assert.AreEqual("Hello Desktop Automation Course", sentMailPage.getSubjectOflastSentEmail());
        }
        public void ThenISeeThatTheEmailIsPresentInSentFolder(string email)
        {
            string bodyXpath = "//*[contains(@email,'{0}')]/../..";
            string emailText = String.Format(bodyXpath, email);

            MainNavigationPanel navigationPanel = new MainNavigationPanel();

            navigationPanel.SentMailLink.Click();
            SentMailPage sentMailPage = new SentMailPage();

            IWebElement toField = Browser.GetDriver().FindElement(By.XPath(emailText));

            bool isEmailInSentBox = toField.Displayed;

            Assert.IsTrue(isEmailInSentBox, $"Email '{email}' was not sent and is not present in Sent Mail box");

            Logger.Configure();
            Log.Information($"I check that email from '{email}' is present in the Sent folder.");
        }
예제 #5
0
        public void TestMethod4()
        {
            EnterPage.ClickCompose();
            ComposeMailPage.InputToField(TestConfiguration.IncorrectEmail);
            ComposeMailPage.InputSubjectField(TestConfiguration.MailSubject);
            ComposeMailPage.InputMessageField(TestConfiguration.Message);
            ComposeMailPage.ClickSendButton();

            Assert.AreEqual(ComposeMailPage.GetErrorMessageHeader(), TestConfiguration.ErrorMessageHeader, "Wrong error message header");

            ComposeMailPage.CloseError();
            ComposeMailPage.EnableToField();
            ComposeMailPage.ClickDeleteWrongEmailButton();
            ComposeMailPage.InputToField(TestConfiguration.IncorrectEmail);
            EnterPage.GoToSendFolder();
            SentMailPage.OpenMail();

            //Assert.AreEqual(OpenedMailPage.GetSubjectText(), TestConfiguration.MailSubject, "Wrong subject");
            Assert.AreEqual(OpenedMailPage.GetMessageText(), TestConfiguration.Message, "Wrong message");
        }
예제 #6
0
 public SentMailPageBO(IWebDriver driver)
 {
     SentMailPage = new SentMailPage(driver);
 }