use of de.symeda.sormas.backend.TestDataCreator.RDCF in project SORMAS-Project by hzi-braunschweig.
the class TaskFacadeEjbTest method testGetPendingTaskCountPerUser.
@Test
public void testGetPendingTaskCountPerUser() {
List<String> userUuids;
// 0. empty or not present uuid
userUuids = Collections.emptyList();
assertThat(getTaskFacade().getPendingTaskCountPerUser(userUuids).entrySet(), is(empty()));
userUuids = Collections.singletonList(DataHelper.createUuid());
assertThat(getTaskFacade().getPendingTaskCountPerUser(userUuids).entrySet(), is(empty()));
// 1. one user with tasks, one without
RDCF rdcf = new RDCF(creator.createRDCFEntities());
UserDto user1 = creator.createUser(rdcf, "First", "User", UserRole.SURVEILLANCE_SUPERVISOR);
UserDto user2 = creator.createUser(rdcf, "Second", "User", UserRole.SURVEILLANCE_SUPERVISOR);
creator.createTask(user1.toReference());
userUuids = Arrays.asList(user1.getUuid(), user2.getUuid());
Map<String, Long> taskCounts = getTaskFacade().getPendingTaskCountPerUser(userUuids);
assertThat(taskCounts.size(), is(1));
assertThat(taskCounts.get(user1.getUuid()), is(1L));
// 2. both users have tasks
creator.createTask(user1.toReference());
creator.createTask(user2.toReference());
taskCounts = getTaskFacade().getPendingTaskCountPerUser(userUuids);
assertThat(taskCounts.size(), is(2));
assertThat(taskCounts.get(user1.getUuid()), is(2L));
assertThat(taskCounts.get(user2.getUuid()), is(1L));
}
use of de.symeda.sormas.backend.TestDataCreator.RDCF in project SORMAS-Project by hzi-braunschweig.
the class TaskFacadeEjbTest method testSampleDeletion.
@Test
public void testSampleDeletion() {
RDCF rdcf = creator.createRDCF("Region", "District", "Community", "Facility");
UserDto user = creator.createUser(rdcf.region.getUuid(), rdcf.district.getUuid(), rdcf.facility.getUuid(), "Surv", "Sup", UserRole.SURVEILLANCE_SUPERVISOR);
UserDto admin = getUserFacade().getByUserName("admin");
String adminUuid = admin.getUuid();
TaskDto task = creator.createTask(TaskContext.GENERAL, TaskType.OTHER, TaskStatus.PENDING, null, null, null, DateHelper.addDays(new Date(), 1), user.toReference());
// Database should contain the created task
assertNotNull(getTaskFacade().getByUuid(task.getUuid()));
getTaskFacade().deleteTask(task);
// Database should not contain the created task
assertNull(getTaskFacade().getByUuid(task.getUuid()));
}
use of de.symeda.sormas.backend.TestDataCreator.RDCF in project SORMAS-Project by hzi-braunschweig.
the class TaskFacadeEjbTest method testGetIndexList.
@Test
public void testGetIndexList() {
RDCF rdcf = creator.createRDCF("Region", "District", "Community", "Facility");
UserDto user = creator.createUser(rdcf.region.getUuid(), rdcf.district.getUuid(), rdcf.facility.getUuid(), "Surv", "Sup", UserRole.SURVEILLANCE_SUPERVISOR);
// Database should contain the created task
assertNotNull(getTaskFacade().getIndexList(null, 0, 100, null));
}
use of de.symeda.sormas.backend.TestDataCreator.RDCF in project SORMAS-Project by hzi-braunschweig.
the class UserFacadeEjbTest method testGetReferencesByRoleAndJurisdiction.
@Test
public void testGetReferencesByRoleAndJurisdiction() {
UserReferenceDto userAdmin = getUserFacade().getAllUserRefs(false).get(0);
RDCF rdcf1 = creator.createRDCF("Region1", "District1_1", "Community1_1", "Facility1");
RDCF rdcf2 = creator.createRDCF("Region2", "District2", "Community2", null);
RegionReferenceDto region1 = rdcf1.region;
RegionReferenceDto region2 = rdcf2.region;
DistrictReferenceDto district1_1 = rdcf1.district;
DistrictReferenceDto district1_2 = new DistrictReferenceDto(creator.createDistrict("District1_2", getBean(RegionService.class).getByUuid(rdcf1.region.getUuid())).getUuid());
DistrictReferenceDto district2 = rdcf2.district;
CommunityReferenceDto community1_1 = rdcf1.community;
CommunityReferenceDto community1_2 = creator.createCommunity("Community1_2", district1_1).toReference();
CommunityReferenceDto community2 = rdcf2.community;
FacilityReferenceDto facility1 = rdcf1.facility;
// Jurisdiction Region
UserReferenceDto userR1 = creator.createUserRef(region1.getUuid(), null, null, null, "Irmin", "Schmidt", EVENT_OFFICER);
UserReferenceDto userR2 = creator.createUserRef(region2.getUuid(), null, null, null, "Michael", "Karoli", STATE_OBSERVER);
// Jurisdiction District
UserReferenceDto userD1 = creator.createUserRef(region1.getUuid(), district1_1.getUuid(), null, null, "Malcolm", "Mooney", CASE_OFFICER);
UserReferenceDto userD2 = creator.createUserRef(region1.getUuid(), district1_2.getUuid(), null, null, "Rosko", "Gee", SURVEILLANCE_OFFICER);
UserReferenceDto userD3 = creator.createUserRef(region2.getUuid(), district2.getUuid(), null, null, "Tim", "Hardin", CONTACT_OFFICER);
// Jurisdiction Community
UserReferenceDto userC1 = creator.createUserRef(region1.getUuid(), district1_1.getUuid(), community1_1.getUuid(), null, "Blixa", "Bargeld", COMMUNITY_INFORMANT);
UserReferenceDto userC2 = creator.createUserRef(region1.getUuid(), district1_1.getUuid(), community1_2.getUuid(), null, "Jaki", "Liebezeit", COMMUNITY_OFFICER);
UserReferenceDto userC3 = creator.createUserRef(region1.getUuid(), district2.getUuid(), community2.getUuid(), null, "Holger", "Czukay", COMMUNITY_INFORMANT);
// Jurisdiction Nation
UserReferenceDto userN1 = creator.createUserRef(null, null, null, null, "Fred", "Cole", NATIONAL_USER);
UserReferenceDto userN2 = creator.createUserRef(null, null, null, null, "Toody", "Cole", NATIONAL_OBSERVER);
// Jurisdiction Health Facility
UserReferenceDto userHF1 = creator.createUserRef(null, null, null, facility1.getUuid(), "FM", "Einheit", HOSPITAL_INFORMANT);
// Supervisors
UserDto userS1 = creator.createUser(region1.getUuid(), null, facility1.getUuid(), "Joey", "Ramone", CASE_SUPERVISOR);
UserDto userS2 = creator.createUser(region1.getUuid(), null, facility1.getUuid(), "Johnny", "Ramone", CONTACT_SUPERVISOR);
UserDto userS3 = creator.createUser(region2.getUuid(), null, facility1.getUuid(), "Dee Dee", "Ramone", SURVEILLANCE_SUPERVISOR);
UserDto userS4 = creator.createUser(region2.getUuid(), null, facility1.getUuid(), "Tommy", "Ramone", POE_SUPERVISOR);
// Tests
assertThat(getUserFacade().getUsersByRegionAndRoles(region1, COMMUNITY_OFFICER, SURVEILLANCE_OFFICER), containsInAnyOrder(userD2, userC2));
assertThat(getUserFacade().getUsersByRegionsAndRoles(Arrays.asList(region1, region2), COMMUNITY_INFORMANT, CASE_OFFICER, CONTACT_OFFICER, STATE_OBSERVER), containsInAnyOrder(userR2, userD1, userD3, userC1, userC3));
assertThat(getUserFacade().getUserRefsByDistrict(district1_1, false, STATE_OBSERVER, CASE_OFFICER, COMMUNITY_OFFICER, POE_INFORMANT), containsInAnyOrder(userD1, userC2));
assertThat(getUserFacade().getUserRefsByDistricts(Arrays.asList(district1_1, district2), false, SURVEILLANCE_OFFICER, CONTACT_OFFICER, COMMUNITY_INFORMANT), containsInAnyOrder(userD3, userC1, userC3));
assertThat(getUserFacade().getUserRefsByDistrict(district1_1, true, CASE_OFFICER), containsInAnyOrder(userD1, userS1, userS2, userS3));
assertThat(getUserFacade().getUsersWithSuperiorJurisdiction(getUserFacade().getByUuid(userN1.getUuid())), anyOf(empty()));
assertThat(getUserFacade().getUsersWithSuperiorJurisdiction(getUserFacade().getByUuid(userR1.getUuid())), containsInAnyOrder(userAdmin, userN1, userN2));
assertThat(getUserFacade().getUsersWithSuperiorJurisdiction(getUserFacade().getByUuid(userD1.getUuid())), containsInAnyOrder(userR1, userS1, userS2));
assertThat(getUserFacade().getUsersWithSuperiorJurisdiction(getUserFacade().getByUuid(userC1.getUuid())), containsInAnyOrder(userD1));
assertThat(getUserFacade().getUsersWithSuperiorJurisdiction(getUserFacade().getByUuid(userHF1.getUuid())), containsInAnyOrder(userC1));
assertThat(getUserFacade().getAllUserRefs(false), hasSize(16));
userS4.setActive(false);
getUserFacade().saveUser(userS4);
assertThat(getUserFacade().getAllUserRefs(false), hasSize(15));
assertThat(getUserFacade().getAllUserRefs(true), hasSize(16));
}
use of de.symeda.sormas.backend.TestDataCreator.RDCF in project SORMAS-Project by hzi-braunschweig.
the class UserFacadeEjbTest method testGetValidLoginRoles.
@Test
public void testGetValidLoginRoles() {
AuthProvider authProvider = mock(AuthProvider.class);
MockedStatic<AuthProvider> mockAuthProvider = mockStatic(AuthProvider.class);
Mockito.when(AuthProvider.getProvider(any())).thenReturn(authProvider);
RDCF rdcf = creator.createRDCF();
UserDto user = creator.createUser(rdcf, SURVEILLANCE_SUPERVISOR);
String password = getUserFacade().resetPassword(user.getUuid());
Set<UserRole> validLoginRoles = getUserFacade().getValidLoginRoles(user.getUserName(), password);
assertThat(validLoginRoles, containsInAnyOrder(SURVEILLANCE_SUPERVISOR));
user.setActive(false);
getUserFacade().saveUser(user);
validLoginRoles = getUserFacade().getValidLoginRoles(user.getUserName(), password);
assertThat(validLoginRoles, nullValue());
// Important: release static mock.
mockAuthProvider.closeOnDemand();
}
Aggregations