public void If_Present_Delete_Emails_From_Draft() { //Объявляем переменные, которые могут понадобится var user = new User(TestDataProvider.Email, TestDataProvider.Password); //Логинимся MailHomePage home = new MailHomePage(driver); home.Login(user); //Переходим к меню и передаем инстанс драйвера дальше MailMainMenu menu = home.GoToMenu(); //Переходим в черновики и в зависимости от того, есть письма или нет выходим или удаляем письма EmailsContainer emails = menu.GoToDrafts(); //Добавлена реализация с использованием SupportPackage (все равно не работает) if (emails.FolderIsEmptyBool()) { home.ExitEmail(); } else { FolderMenu folderMenu = emails.GoToFolderMenu(); folderMenu.SelectAll(); folderMenu.Delete(); Assert.True(emails.FolderIsEmpty()); home.ExitEmail(); } }
public void Compose_New_Email(string login, string password, string addressee, string topic, string text) { //Объявляем бизнес объекты и передаем в них значения из json var user = new User(login, password); var email = new Email(addressee, topic, text); //Логинимся MailHomePage home = new MailHomePage(driver); home.Login(user); //Переходим к меню и передаем инстанс драйвера дальше MailMainMenu menu = home.GoToMenu(); //Приступаем к созданию нового письма MailComposeNewEmail newEmail = menu.ComposeNewEmail(); newEmail.InputEmailData(email); newEmail.ClickSaveButton(); newEmail.ClickCloseButton(); //Переходим в черновики EmailsContainer emails = menu.GoToDrafts(); //Открываем нужный черновик DraftEmail draft = emails.OpenDraft(); Assert.True(draft.CheckAddressee()); Assert.True(draft.CheckTopic()); Assert.True(draft.CheckText()); draft.ClickSendButton(); draft.CloseEmail(); emails.WaitForEmailSent(); //Переходим в отправленные menu.GoToSent(); Assert.True(emails.ValidateAddresseeAndTopic()); //Выходим из почты home.ExitEmail(); }