use of org.olat.modules.lecture.RepositoryEntryLectureConfiguration in project OpenOLAT by OpenOLAT.
the class RepositoryEntryLectureConfigurationDAOTest method createAndConfigureLectureConfiguration.
@Test
public void createAndConfigureLectureConfiguration() {
RepositoryEntry entry = JunitTestHelper.createAndPersistRepositoryEntry();
RepositoryEntryLectureConfiguration config = lectureConfigurationDao.createConfiguration(entry);
dbInstance.commitAndCloseSession();
config.setLectureEnabled(true);
config.setOverrideModuleDefault(true);
config.setCalculateAttendanceRate(Boolean.TRUE);
config.setRequiredAttendanceRate(0.75d);
config.setParticipantCalendarSyncEnabled(Boolean.TRUE);
config.setTeacherCalendarSyncEnabled(Boolean.TRUE);
RepositoryEntryLectureConfiguration mergedConfig = lectureConfigurationDao.update(config);
dbInstance.commitAndCloseSession();
RepositoryEntryLectureConfiguration reloadedConfig = lectureConfigurationDao.getConfiguration(entry);
Assert.assertEquals(config, reloadedConfig);
Assert.assertEquals(mergedConfig, reloadedConfig);
Assert.assertEquals(true, reloadedConfig.isLectureEnabled());
Assert.assertEquals(true, reloadedConfig.isOverrideModuleDefault());
Assert.assertEquals(Boolean.TRUE, reloadedConfig.getCalculateAttendanceRate());
Assert.assertEquals(0.75d, reloadedConfig.getRequiredAttendanceRate(), 0.0001);
Assert.assertEquals(Boolean.TRUE, reloadedConfig.getParticipantCalendarSyncEnabled());
Assert.assertEquals(Boolean.TRUE, reloadedConfig.getTeacherCalendarSyncEnabled());
}
use of org.olat.modules.lecture.RepositoryEntryLectureConfiguration in project OpenOLAT by OpenOLAT.
the class RepositoryEntryLectureConfigurationDAOTest method getRepositoryEntryLectureConfiguration_lectureBlock.
@Test
public void getRepositoryEntryLectureConfiguration_lectureBlock() {
RepositoryEntry entry = JunitTestHelper.createAndPersistRepositoryEntry();
RepositoryEntryLectureConfiguration config = lectureConfigurationDao.createConfiguration(entry);
dbInstance.commit();
LectureBlock lectureBlock = lectureBlockDao.createLectureBlock(entry);
lectureBlock.setStartDate(new Date());
lectureBlock.setEndDate(new Date());
lectureBlock.setTitle("Hello lecturers");
lectureBlock = lectureBlockDao.update(lectureBlock);
dbInstance.commitAndCloseSession();
// get the configuration
RepositoryEntryLectureConfiguration reloadedConfig = lectureConfigurationDao.getConfiguration(lectureBlock);
Assert.assertEquals(config, reloadedConfig);
}
use of org.olat.modules.lecture.RepositoryEntryLectureConfiguration in project OpenOLAT by OpenOLAT.
the class LectureBlockDAOTest method getRollCallAsTeacher.
@Test
public void getRollCallAsTeacher() {
Identity teacher = JunitTestHelper.createAndPersistIdentityAsRndUser("teacher-1");
RepositoryEntry entry = JunitTestHelper.createAndPersistRepositoryEntry();
LectureBlock lectureBlock = createMinimalLectureBlock(entry);
dbInstance.commitAndCloseSession();
// enable lecture on this entry
RepositoryEntryLectureConfiguration config = lectureService.getRepositoryEntryLectureConfiguration(entry);
config.setLectureEnabled(true);
config = lectureService.updateRepositoryEntryLectureConfiguration(config);
lectureService.addTeacher(lectureBlock, teacher);
dbInstance.commitAndCloseSession();
List<LectureBlock> rollcalls = lectureBlockDao.getRollCallAsTeacher(teacher);
Assert.assertNotNull(rollcalls);
Assert.assertEquals(1, rollcalls.size());
Assert.assertEquals(lectureBlock, rollcalls.get(0));
}
use of org.olat.modules.lecture.RepositoryEntryLectureConfiguration in project openolat by klemens.
the class LectureBlockDAOTest method getRollCallAsTeacher.
@Test
public void getRollCallAsTeacher() {
Identity teacher = JunitTestHelper.createAndPersistIdentityAsRndUser("teacher-1");
RepositoryEntry entry = JunitTestHelper.createAndPersistRepositoryEntry();
LectureBlock lectureBlock = createMinimalLectureBlock(entry);
dbInstance.commitAndCloseSession();
// enable lecture on this entry
RepositoryEntryLectureConfiguration config = lectureService.getRepositoryEntryLectureConfiguration(entry);
config.setLectureEnabled(true);
config = lectureService.updateRepositoryEntryLectureConfiguration(config);
lectureService.addTeacher(lectureBlock, teacher);
dbInstance.commitAndCloseSession();
List<LectureBlock> rollcalls = lectureBlockDao.getRollCallAsTeacher(teacher);
Assert.assertNotNull(rollcalls);
Assert.assertEquals(1, rollcalls.size());
Assert.assertEquals(lectureBlock, rollcalls.get(0));
}
use of org.olat.modules.lecture.RepositoryEntryLectureConfiguration in project openolat by klemens.
the class LectureServiceTest method getParticipantLecturesStatistics.
@Test
public void getParticipantLecturesStatistics() {
RepositoryEntry entry = JunitTestHelper.createAndPersistRepositoryEntry();
Identity participant1 = JunitTestHelper.createAndPersistIdentityAsRndUser("participant-6-1");
Identity participant2 = JunitTestHelper.createAndPersistIdentityAsRndUser("participant-6-2");
// a closed lecture block in the past
LectureBlock lectureBlock1 = createClosedLectureBlockInPast(entry);
LectureBlock lectureBlock2 = createClosedLectureBlockInPast(entry);
LectureBlock lectureBlock3 = createClosedLectureBlockInPast(entry);
// create summary in the past
Calendar cal = Calendar.getInstance();
cal.add(Calendar.DATE, -4);
lectureParticipantSummaryDao.createSummary(entry, participant1, cal.getTime());
lectureParticipantSummaryDao.createSummary(entry, participant2, cal.getTime());
// add participants to the "course"
repositoryEntryRelationDAO.addRole(participant1, entry, GroupRole.participant.name());
repositoryEntryRelationDAO.addRole(participant2, entry, GroupRole.participant.name());
dbInstance.commitAndCloseSession();
RepositoryEntryLectureConfiguration config = lectureService.getRepositoryEntryLectureConfiguration(entry);
config.setLectureEnabled(true);
lectureService.updateRepositoryEntryLectureConfiguration(config);
// add the course to the lectures
Group defGroup = repositoryService.getDefaultGroup(entry);
lectureBlock1 = lectureService.save(lectureBlock1, Collections.singletonList(defGroup));
lectureBlock2 = lectureService.save(lectureBlock2, Collections.singletonList(defGroup));
lectureBlock3 = lectureService.save(lectureBlock3, Collections.singletonList(defGroup));
dbInstance.commitAndCloseSession();
lectureService.addRollCall(participant1, lectureBlock1, null, toList(1, 2));
lectureService.addRollCall(participant1, lectureBlock2, null, toList(1, 2, 3, 4));
lectureService.addRollCall(participant2, lectureBlock1, null, toList(1, 2, 3, 4));
lectureService.addRollCall(participant2, lectureBlock3, null, toList(2, 3, 4));
dbInstance.commitAndCloseSession();
// check first participant
List<LectureBlockStatistics> statistics_1 = lectureService.getParticipantLecturesStatistics(participant1);
Assert.assertNotNull(statistics_1);
Assert.assertEquals(1, statistics_1.size());
LectureBlockStatistics statistic_1 = statistics_1.get(0);
Assert.assertEquals(12, statistic_1.getTotalPersonalPlannedLectures());
Assert.assertEquals(2, statistic_1.getTotalAttendedLectures());
Assert.assertEquals(6, statistic_1.getTotalAbsentLectures());
// check second participant
List<LectureBlockStatistics> statistics_2 = lectureService.getParticipantLecturesStatistics(participant2);
Assert.assertNotNull(statistics_2);
Assert.assertEquals(1, statistics_2.size());
LectureBlockStatistics statistic_2 = statistics_2.get(0);
Assert.assertEquals(12, statistic_2.getTotalPersonalPlannedLectures());
Assert.assertEquals(1, statistic_2.getTotalAttendedLectures());
Assert.assertEquals(7, statistic_2.getTotalAbsentLectures());
}
Aggregations