package jfxtras.internal.scene.control.skin.agenda.icalendar.base24hour.popup; import static org.junit.Assert.assertEquals; import java.time.LocalDateTime; import java.util.stream.Collectors; import org.junit.Test; import javafx.scene.control.ComboBox; import jfxtras.icalendarfx.components.VEvent; import jfxtras.icalendarfx.properties.calendar.Version; import jfxtras.scene.control.agenda.icalendar.ICalendarAgenda; import jfxtras.scene.control.agenda.icalendar.ICalendarStaticComponents; import jfxtras.scene.control.agenda.icalendar.agenda.AgendaTestAbstract; import jfxtras.scene.control.agenda.icalendar.editors.ChangeDialogOption; import jfxtras.test.TestUtil; public class PopupDeleteAllTest extends VEventPopupTestBase { @Test public void canDeleteAll() { VEvent vevent = ICalendarStaticComponents.getDaily1(); TestUtil.runThenWaitForPaintPulse( () -> { getEditComponentPopup().setupData( vevent, LocalDateTime.of(2015, 11, 11, 10, 0), // start selected instance LocalDateTime.of(2015, 11, 11, 11, 0), // end selected instance AgendaTestAbstract.CATEGORIES); }); // delete VComponent clickOn("#deleteComponentButton"); ComboBox<ChangeDialogOption> c = find("#changeDialogComboBox"); TestUtil.runThenWaitForPaintPulse( () -> c.getSelectionModel().select(ChangeDialogOption.ALL)); clickOn("#changeDialogOkButton"); String expectediTIPMessage = "BEGIN:VCALENDAR" + System.lineSeparator() + "METHOD:CANCEL" + System.lineSeparator() + "PRODID:" + ICalendarAgenda.DEFAULT_PRODUCT_IDENTIFIER + System.lineSeparator() + "VERSION:" + Version.DEFAULT_ICALENDAR_SPECIFICATION_VERSION + System.lineSeparator() + "BEGIN:VEVENT" + System.lineSeparator() + "CATEGORIES:group05" + System.lineSeparator() + "DESCRIPTION:Daily1 Description" + System.lineSeparator() + "SUMMARY:Daily1 Summary" + System.lineSeparator() + "DTSTAMP:20150110T080000Z" + System.lineSeparator() + "UID:20150110T080000-004@jfxtras.org" + System.lineSeparator() + "ORGANIZER;CN=Papa Smurf:mailto:papa@smurf.org" + System.lineSeparator() + "STATUS:CANCELLED" + System.lineSeparator() + "END:VEVENT" + System.lineSeparator() + "END:VCALENDAR"; String iTIPMessage = getEditComponentPopup().iTIPMessagesProperty().get().stream() .map(v -> v.toString()) .collect(Collectors.joining(System.lineSeparator())); assertEquals(expectediTIPMessage, iTIPMessage); } }