@When("^the user copy by IMAP first message of \"([^\"]*)\" to mailbox \"([^\"]*)\"$") public void copyAMessageByIMAP(String srcMailbox, String destMailbox) throws Throwable { String login = userStepdefs.getConnectedUser(); String password = userStepdefs.getUserPassword(login); try (IMAPMessageReader imapMessageReader = new IMAPMessageReader()) { imapMessageReader.connect(LOCALHOST, mainStepdefs.jmapServer.getProbe(ImapGuiceProbe.class).getImapPort()) .login(login, password) .select(srcMailbox); assertThat(imapMessageReader).isNotNull(); imapMessageReader.copyFirstMessage(destMailbox); mainStepdefs.awaitMethod.run(); } }
@Then("^the message has IMAP flag \"([^\"]*)\" in mailbox \"([^\"]*)\" for \"([^\"]*)\"$") public void hasMessageWithFlagInMailbox(String flags, String mailbox, String username) throws Throwable { try (IMAPMessageReader imapMessageReader = new IMAPMessageReader()) { imapMessageReader.connect(LOCALHOST, mainStepdefs.jmapServer.getProbe(ImapGuiceProbe.class).getImapPort()) .login(userStepdefs.getConnectedUser(), userStepdefs.getUserPassword(username)) .select(mailbox); assertThat(imapMessageReader.hasAMessageWithFlags(flags)) .isTrue(); } }
@Then("^the user does not have a IMAP message in mailbox \"([^\"]*)\"$") public void hasNoMessageInMailbox(String mailbox) throws Throwable { try (IMAPMessageReader imapMessageReader = new IMAPMessageReader()) { imapMessageReader.connect(LOCALHOST, mainStepdefs.jmapServer.getProbe(ImapGuiceProbe.class).getImapPort()) .login(userStepdefs.getConnectedUser(), userStepdefs.getUserPassword(userStepdefs.getConnectedUser())) .select(mailbox); assertThat(imapMessageReader.userDoesNotReceiveMessage()) .isTrue(); } }
@Then("^the user has a IMAP message in mailbox \"([^\"]*)\"$") public void hasMessageInMailbox(String mailbox) throws Throwable { try (IMAPMessageReader imapMessageReader = new IMAPMessageReader()) { imapMessageReader.connect(LOCALHOST, mainStepdefs.jmapServer.getProbe(ImapGuiceProbe.class).getImapPort()) .login(userStepdefs.getConnectedUser(), userStepdefs.getUserPassword(userStepdefs.getConnectedUser())) .select(mailbox); assertThat(imapMessageReader.hasAMessage()).isTrue(); } }
@Then("^the user has a IMAP notification about (\\d+) new message when selecting mailbox \"([^\"]*)\"$") public void hasANotificationAboutNewMessagesInMailbox(int numOfNewMessage, String mailbox) throws Throwable { try (IMAPMessageReader imapMessageReader = new IMAPMessageReader()) { imapMessageReader.connect(LOCALHOST, mainStepdefs.jmapServer.getProbe(ImapGuiceProbe.class).getImapPort()) .login(userStepdefs.getConnectedUser(), userStepdefs.getUserPassword(userStepdefs.getConnectedUser())) .select(mailbox); assertThat( imapMessageReader.userGetNotifiedForNewMessagesWhenSelectingMailbox(numOfNewMessage)) .isTrue(); } }
@SuppressWarnings("resource") @Given("^the user has an open IMAP connection with mailbox \"([^\"]*)\" selected") public void openImapConnectionAndSelectMailbox(String mailbox) throws Throwable { String login = userStepdefs.getConnectedUser(); String password = userStepdefs.getUserPassword(login); imapConnections.put(mailbox, new IMAPMessageReader() .connect(LOCALHOST, mainStepdefs.jmapServer.getProbe(ImapGuiceProbe.class).getImapPort()) .login(login, password) .select(mailbox)); }
.login(USERNAME, PASSWORD) .select(MailboxConstants.INBOX); assertThat(imapMessageReader.readFirstMessage())
.login(ALICE, ALICE_PASSWORD) .select("Spam");
.login(ALICE, ALICE_PASSWORD) .select("Spam");
.login(ALICE, ALICE_PASSWORD) .select(IMAPMessageReader.INBOX);
.login(ALICE, ALICE_PASSWORD) .select(IMAPMessageReader.INBOX);