/** Testet das Verwerfen der Änderungen. */ @Test public final void testCancel() { controller.setDialogStage(mockedDialogStage); // Alarm vorgeben final LocalDateTime now = LocalDateTime.now(); final Alarm alarm = new Alarm(now, "bla"); controller.setAlarm(alarm); FXTestUtils.awaitEvents(); // deaktivieren click(alarmEnabledCheckbox); waitForThreads(); Platform.runLater( new Runnable() { public void run() { // Datum setzen alarmDatePicker.setValue(DateTimeUtil.getLocalDateForString("24.12.2014")); // Zeit setzen alarmTimePicker.setValue(DateTimeUtil.getLocalTimeForString("12:00:00")); // Beschreibung setzen alarmDescriptionTextField.setText("Test"); } }); FXTestUtils.awaitEvents(); // Sound setzen controller.setRingtone("Sound"); FXTestUtils.awaitEvents(); // Abbrechen-Schaltfläche betätigen final Button alarmCancelButton = (Button) scene.lookup("#alarmCancelButton"); click(alarmCancelButton); waitForThreads(); // sicherstellen, dass Dialog geschlossen worden wäre verify(mockedDialogStage, timeout(WAIT_FOR_EVENT)).close(); // sicherstellen, dass Alarm ursprüngliche Werte hat assertTrue(alarm.isEnabled()); assertEquals(now, alarm.getDateTime()); assertEquals("bla", alarm.getDescription()); assertEquals(null, alarm.getSound()); }
/** Testet das Speichern der Änderungen. */ @Test public final void testApplyChanges() { controller.setDialogStage(mockedDialogStage); // Alarm vorgeben final Alarm alarm = new Alarm(DateTimeUtil.getLocalDateTimeForString("01.01.1970 00:00:00"), "Bla"); controller.setAlarm(alarm); FXTestUtils.awaitEvents(); // deaktivieren click(alarmEnabledCheckbox); waitForThreads(); Platform.runLater( new Runnable() { public void run() { // Datum setzen alarmDatePicker.setValue(DateTimeUtil.getLocalDateForString("24.12.2014")); // Zeit setzen alarmTimePicker.setValue(DateTimeUtil.getLocalTimeForString("12:00:00")); // Beschreibung setzen alarmDescriptionTextField.setText("Test"); } }); FXTestUtils.awaitEvents(); // Sound setzen controller.setRingtone("Sound"); FXTestUtils.awaitEvents(); // Speichern-Schaltfläche betätigen click(alarmSaveButton); waitForThreads(); // sicherstellen, dass Dialog geschlossen worden wäre verify(mockedDialogStage, timeout(WAIT_FOR_EVENT)).close(); // sicherstellen, dass Alarm neue Werte hat assertFalse(alarm.isEnabled()); assertEquals( DateTimeUtil.getLocalDateTimeForString("24.12.2014 12:00:00"), alarm.getDateTime()); assertEquals("Test", alarm.getDescription()); assertEquals("Sound", alarm.getSound()); }