Search in sources :

Example 11 with Reminder

use of org.olat.modules.reminder.Reminder in project OpenOLAT by OpenOLAT.

the class ReminderDAOTest method getReminders_repositoryEntry.

@Test
public void getReminders_repositoryEntry() {
    // create and reminder and an identity
    Identity creator = JunitTestHelper.createAndPersistIdentityAsRndUser("creator-rem-4");
    RepositoryEntry entry = JunitTestHelper.createAndPersistRepositoryEntry();
    Reminder reminder = reminderDao.createReminder(entry, creator);
    reminder.setConfiguration("<rules></rules>");
    reminder.setDescription("Reminder - 4");
    reminder.setEmailSubject("This is a subject");
    reminder.setEmailBody("Hello world");
    Reminder savedReminder = reminderDao.save(reminder);
    Assert.assertNotNull(savedReminder);
    dbInstance.commitAndCloseSession();
    List<Reminder> loadedReminders = reminderDao.getReminders(entry);
    Assert.assertNotNull(loadedReminders);
    Assert.assertEquals(1, loadedReminders.size());
    Reminder loadedReminder = loadedReminders.get(0);
    Assert.assertNotNull(loadedReminder);
    Assert.assertEquals(savedReminder, loadedReminder);
    Assert.assertEquals(entry, loadedReminder.getEntry());
    Assert.assertEquals("Reminder - 4", loadedReminder.getDescription());
    Assert.assertEquals("This is a subject", loadedReminder.getEmailSubject());
    Assert.assertEquals("Hello world", loadedReminder.getEmailBody());
}
Also used : Reminder(org.olat.modules.reminder.Reminder) SentReminder(org.olat.modules.reminder.SentReminder) RepositoryEntry(org.olat.repository.RepositoryEntry) Identity(org.olat.core.id.Identity) Test(org.junit.Test)

Example 12 with Reminder

use of org.olat.modules.reminder.Reminder in project OpenOLAT by OpenOLAT.

the class ReminderDAOTest method getSendReminders_byRepositoryEntry.

@Test
public void getSendReminders_byRepositoryEntry() {
    // create and reminder and an identity
    Identity creator = JunitTestHelper.createAndPersistIdentityAsRndUser("creator-rem-8");
    Identity recepient1 = JunitTestHelper.createAndPersistIdentityAsRndUser("recepient-rem-8a");
    Identity recepient2 = JunitTestHelper.createAndPersistIdentityAsRndUser("recepient-rem-8b");
    RepositoryEntry entry = JunitTestHelper.createAndPersistRepositoryEntry();
    Reminder savedReminder = createAndSaveReminder(entry, creator, 8);
    dbInstance.commitAndCloseSession();
    Assert.assertNotNull(savedReminder);
    // send 3 reminders
    SentReminderImpl sentReminder1 = reminderDao.markAsSend(savedReminder, recepient1, "ok");
    SentReminderImpl sentReminder2 = reminderDao.markAsSend(savedReminder, recepient2, "error");
    SentReminderImpl sentReminder3 = reminderDao.markAsSend(savedReminder, recepient2, "error");
    dbInstance.commitAndCloseSession();
    // load the sent reminder log
    List<SentReminder> sentReminders = reminderDao.getSendReminders(entry);
    Assert.assertNotNull(sentReminders);
    Assert.assertEquals(3, sentReminders.size());
    Assert.assertTrue(sentReminders.contains(sentReminder1));
    Assert.assertTrue(sentReminders.contains(sentReminder2));
    Assert.assertTrue(sentReminders.contains(sentReminder3));
}
Also used : Reminder(org.olat.modules.reminder.Reminder) SentReminder(org.olat.modules.reminder.SentReminder) SentReminderImpl(org.olat.modules.reminder.model.SentReminderImpl) RepositoryEntry(org.olat.repository.RepositoryEntry) Identity(org.olat.core.id.Identity) SentReminder(org.olat.modules.reminder.SentReminder) Test(org.junit.Test)

Example 13 with Reminder

use of org.olat.modules.reminder.Reminder in project OpenOLAT by OpenOLAT.

the class ReminderDAOTest method getReminders_repositoryEntry_softDeleted.

@Test
public void getReminders_repositoryEntry_softDeleted() {
    // create and reminder and an identity
    Identity creator = JunitTestHelper.createAndPersistIdentityAsRndUser("creator-rem-12");
    RepositoryEntry entry = JunitTestHelper.createAndPersistRepositoryEntry();
    Reminder reminder = reminderDao.createReminder(entry, creator);
    reminder.setConfiguration("<rules></rules>");
    reminder.setDescription("Reminder - 12");
    reminder.setEmailSubject("This is a deleted subject");
    reminder.setEmailBody("Hello, I'm deleted");
    Reminder savedReminder = reminderDao.save(reminder);
    Assert.assertNotNull(savedReminder);
    dbInstance.commitAndCloseSession();
    // check that we found the reminder
    List<Reminder> loadedReminders = reminderDao.getReminders(new Date());
    Assert.assertNotNull(loadedReminders);
    Assert.assertTrue(loadedReminders.contains(savedReminder));
    // delete the resource
    repositoryService.deleteSoftly(entry, creator, false);
    dbInstance.commitAndCloseSession();
    // check we don't found the reminder
    List<Reminder> reloadedReminders = reminderDao.getReminders(new Date());
    Assert.assertNotNull(reloadedReminders);
    Assert.assertFalse(reloadedReminders.contains(savedReminder));
}
Also used : Reminder(org.olat.modules.reminder.Reminder) SentReminder(org.olat.modules.reminder.SentReminder) RepositoryEntry(org.olat.repository.RepositoryEntry) Identity(org.olat.core.id.Identity) Date(java.util.Date) Test(org.junit.Test)

Example 14 with Reminder

use of org.olat.modules.reminder.Reminder in project OpenOLAT by OpenOLAT.

the class ReminderDAOTest method getSendReminders_byReminder.

@Test
public void getSendReminders_byReminder() {
    // create and reminder and an identity
    Identity creator = JunitTestHelper.createAndPersistIdentityAsRndUser("creator-rem-7");
    Identity recepient1 = JunitTestHelper.createAndPersistIdentityAsRndUser("recepient-rem-7a");
    Identity recepient2 = JunitTestHelper.createAndPersistIdentityAsRndUser("recepient-rem-7b");
    RepositoryEntry entry = JunitTestHelper.createAndPersistRepositoryEntry();
    Reminder savedReminder = createAndSaveReminder(entry, creator, 7);
    dbInstance.commitAndCloseSession();
    Assert.assertNotNull(savedReminder);
    // send 3 reminders
    SentReminderImpl sentReminder1 = reminderDao.markAsSend(savedReminder, recepient1, "ok");
    SentReminderImpl sentReminder2 = reminderDao.markAsSend(savedReminder, recepient2, "error");
    SentReminderImpl sentReminder3 = reminderDao.markAsSend(savedReminder, recepient1, "error");
    dbInstance.commitAndCloseSession();
    // load the sent reminder log
    List<SentReminder> sentReminders = reminderDao.getSendReminders(savedReminder);
    Assert.assertNotNull(sentReminders);
    Assert.assertEquals(3, sentReminders.size());
    Assert.assertTrue(sentReminders.contains(sentReminder1));
    Assert.assertTrue(sentReminders.contains(sentReminder2));
    Assert.assertTrue(sentReminders.contains(sentReminder3));
}
Also used : Reminder(org.olat.modules.reminder.Reminder) SentReminder(org.olat.modules.reminder.SentReminder) SentReminderImpl(org.olat.modules.reminder.model.SentReminderImpl) RepositoryEntry(org.olat.repository.RepositoryEntry) Identity(org.olat.core.id.Identity) SentReminder(org.olat.modules.reminder.SentReminder) Test(org.junit.Test)

Example 15 with Reminder

use of org.olat.modules.reminder.Reminder in project OpenOLAT by OpenOLAT.

the class ReminderDAOTest method createAndSaveReminder.

private Reminder createAndSaveReminder(RepositoryEntry entry, Identity creator, int num) {
    Reminder reminder = reminderDao.createReminder(entry, creator);
    reminder.setConfiguration("<rules></rules>");
    reminder.setDescription("Reminder - " + num);
    reminder.setEmailSubject("This is a subject - " + num);
    reminder.setEmailBody("Hello world - " + num);
    return reminderDao.save(reminder);
}
Also used : Reminder(org.olat.modules.reminder.Reminder) SentReminder(org.olat.modules.reminder.SentReminder)

Aggregations

Reminder (org.olat.modules.reminder.Reminder)62 SentReminder (org.olat.modules.reminder.SentReminder)46 Identity (org.olat.core.id.Identity)32 Test (org.junit.Test)26 RepositoryEntry (org.olat.repository.RepositoryEntry)26 SentReminderImpl (org.olat.modules.reminder.model.SentReminderImpl)10 Date (java.util.Date)8 ImportExportReminder (org.olat.modules.reminder.model.ImportExportReminder)6 File (java.io.File)4 ParseException (java.text.ParseException)4 ArrayList (java.util.ArrayList)4 MailerResult (org.olat.core.util.mail.MailerResult)4 ReminderModule (org.olat.modules.reminder.ReminderModule)4 ReminderRule (org.olat.modules.reminder.ReminderRule)4 ReminderService (org.olat.modules.reminder.ReminderService)4 RuleSPI (org.olat.modules.reminder.RuleSPI)4 ImportExportReminders (org.olat.modules.reminder.model.ImportExportReminders)4 ReminderRules (org.olat.modules.reminder.model.ReminderRules)4 FileInputStream (java.io.FileInputStream)2 FileOutputStream (java.io.FileOutputStream)2