package cz.moneta.test.dsl.ufo.operations.ufoOperations;

import cz.moneta.test.harness.support.web.*;

public interface BOX701_DataBoxes extends WebFlow<BOX701_DataBoxes> {
    String WELCOME_LABEL = "BOX701_S001_L001";
    String CASES_BUTTON = "XXX799_T001_I001";
    String CASES_SEARCH_BUTTON = "BOX702_S002_B012";
    String REQUESTED_DOCUMENTS_BUTTON = "XXX799_T001_I002";
    String REQUESTED_DOCUMENTS_SEARCH_BUTTON = "BOX703_S001_B003";
    String NEW_MESSAGE_BUTTON = "XXX799_T001_I005";
    String NEW_MESSAGE_CONTINUE_BUTTON = "BOX708_S001_B003";
    String NEW_MESSAGE_CANCEL_BUTTON = "BOX708_S001_B005";
    String SENT_MESSAGES_BUTTON = "XXX799_T001_I010";
    String SENT_MESSAGES_SEARCH_BUTTON = "BOX709_S001_B004";

    @Wait(value = WELCOME_LABEL, explicitWaitSeconds = 30, until = Until.VISIBLE)
    @CheckElementContent(WELCOME_LABEL)
    BOX701_DataBoxes assertWelcomeLabel(String welcomeLabel);

    @Click(CASES_BUTTON)
    BOX701_DataBoxes clickCasesButton();

    @Wait(value = CASES_SEARCH_BUTTON, explicitWaitSeconds = 30, until = Until.VISIBLE)
    @CheckElementContent(CASES_SEARCH_BUTTON)
    BOX701_DataBoxes assertCasesSearchButton(String casesSearchButton);

    @Click(REQUESTED_DOCUMENTS_BUTTON)
    BOX701_DataBoxes clickRequestedDocuments();

    @Wait(value = REQUESTED_DOCUMENTS_SEARCH_BUTTON, explicitWaitSeconds = 30, until = Until.VISIBLE)
    @CheckElementContent(REQUESTED_DOCUMENTS_SEARCH_BUTTON)
    BOX701_DataBoxes assertRequestedDocumentsSearchButton(String requestedDocumentsSearchButton);

    @Click(NEW_MESSAGE_BUTTON)
    BOX701_DataBoxes clickNewMessageButton();

    @Wait(value = NEW_MESSAGE_CONTINUE_BUTTON, explicitWaitSeconds = 30, until = Until.VISIBLE)
    @CheckElementContent(NEW_MESSAGE_CONTINUE_BUTTON)
    BOX701_DataBoxes assertNewMessageContinueButton(String newMessageContinueButton);

    @Click(NEW_MESSAGE_CANCEL_BUTTON)
    BOX701_DataBoxes clickNewMessageCancelButton();

    @Click(SENT_MESSAGES_BUTTON)
    BOX701_DataBoxes clickSentMessagesButton();

    @Wait(value = SENT_MESSAGES_SEARCH_BUTTON, explicitWaitSeconds = 5, until = Until.VISIBLE)
    @CheckElementContent(SENT_MESSAGES_SEARCH_BUTTON)
    BOX701_DataBoxes assertSentMessagesSearchButton(String sentMessagesSearchButton);
}
