package com.bookstore;
import com.algocrafts.pages.Page;
import com.bookstore.domain.MailingOptions;
import com.bookstore.domain.OtherInformation;
import static com.algocrafts.selectors.Name.MAILING_OPTION;
import static com.bookstore.BookStoreId.*;
public class OtherInformationForm {
private Page page;
public OtherInformationForm(Page page) {
this.page = page;
}
public void setOtherInformation(OtherInformation info) {
page.put(COUPON_CODE, info.couponCode);
page.put(BILLING_EMAIL, info.emailAddress);
page.put(COMMENTS, info.comments);
page.setCheckbox(CONFIRM_EMAIL, info.confirmEmail);
page.setCheckbox(RATINGS, info.askRating);
page.setRadioButton(MAILING_OPTION, info.mailingOptions);
}
public OtherInformation getOtherInformation() {
return new OtherInformation(
page.get(COUPON_CODE),
page.get(BILLING_EMAIL),
page.isChecked(CONFIRM_EMAIL),
page.isChecked(RATINGS),
page.get(MAILING_OPTION, MailingOptions::from),
page.get(COMMENTS)
);
}
}