package cz.moneta.test.dsl.monetaportal.savings.childbuildingsavings;

import cz.moneta.test.harness.endpoints.ib.NewIbEndpoint;
import cz.moneta.test.harness.support.web.Click;
import cz.moneta.test.harness.support.web.CustomAction;
import cz.moneta.test.harness.support.web.Wait;

import static cz.moneta.test.dsl.monetaportal.savings.childbuildingsavings.LawFormPage.PAGE_HEADER;

@Wait(PAGE_HEADER)
public interface LawFormPage extends ChildBuildingSavingsPageFlow<LawFormPage> {
    String PAGE_HEADER = "//h2[text()='Údaje vyžadované zákonem']";
    String ANSWER = "//*[text() = '%s']";

    @CustomAction
    default LawFormPage clickAnswers(String[] answers) {
        NewIbEndpoint ep = getEndpoint(NewIbEndpoint.class);
        for (String answer : answers) {
            ep.jsClick(() -> String.format(ANSWER, answer));
        }
        return null;
    }

    @CustomAction
    default LawFormPage clickAnswers() {
        String[] answers = {"Příjem z podnikání", "Příjem ze zaměstnání", "Převody z vlastního bankovního účtu", "50 000 - 100 000 Kč", "Ne"};
        clickAnswers(answers);
        return null;
    }

    @Click(CONTINUE_BUTTON)
    PreContractInformationPage clickContinue();
}
