Skip to content
This repository was archived by the owner on May 5, 2021. It is now read-only.

Commit 4c02fcf

Browse files
author
FredrikSchäferVitagroup
committed
SORMAS-Foundation#3927 fix unit test and nullable constraints
1 parent 93d32c1 commit 4c02fcf

4 files changed

Lines changed: 19 additions & 10 deletions

File tree

sormas-api/src/main/java/de/symeda/sormas/api/systemevents/SystemEventStatus.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,9 @@
44

55
public enum SystemEventStatus {
66

7+
STARTED,
78
SUCCESS,
9+
CANCELLED,
810
ERROR;
911

1012
public String toString() {

sormas-backend/src/main/java/de/symeda/sormas/backend/systemevent/SystemEvent.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
import javax.persistence.Enumerated;
1212
import javax.persistence.Temporal;
1313
import javax.persistence.TemporalType;
14+
import javax.validation.constraints.NotNull;
1415
import java.util.Date;
1516
import java.util.Objects;
1617

@@ -35,6 +36,7 @@ public class SystemEvent extends AbstractDomainObject {
3536
private String additionalInfo;
3637

3738
@Enumerated(EnumType.STRING)
39+
@Column(nullable = false)
3840
public SystemEventType getType() {
3941
return type;
4042
}
@@ -44,6 +46,7 @@ public void setType(SystemEventType type) {
4446
}
4547

4648
@Temporal(TemporalType.TIMESTAMP)
49+
@Column(nullable = false)
4750
public Date getStartDate() {
4851
return startDate;
4952
}
@@ -62,6 +65,7 @@ public void setEndDate(Date endDate) {
6265
}
6366

6467
@Enumerated(EnumType.STRING)
68+
@Column(nullable = false)
6569
public SystemEventStatus getStatus() {
6670
return status;
6771
}

sormas-backend/src/main/resources/sql/sormas_schema.sql

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6203,9 +6203,9 @@ CREATE TABLE systemevent (
62036203
changedate timestamp not null,
62046204
creationdate timestamp not null,
62056205
type varchar(255) not null,
6206-
startdate timestamp,
6206+
startdate timestamp not null,
62076207
enddate timestamp,
6208-
status varchar(255),
6208+
status varchar(255) not null,
62096209
additionalInfo varchar(512),
62106210
primary key(id)
62116211
);

sormas-backend/src/test/java/de/symeda/sormas/backend/systemevent/SystemEventFacadeEjbTest.java

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
import de.symeda.sormas.backend.AbstractBeanTest;
77
import de.symeda.sormas.backend.TestDataCreator;
88

9+
import static org.hamcrest.Matchers.hasSize;
910
import org.junit.Test;
1011

1112
import javax.persistence.criteria.CriteriaBuilder;
@@ -16,6 +17,7 @@
1617
import java.util.List;
1718

1819
import static org.junit.Assert.assertEquals;
20+
import static org.junit.Assert.assertThat;
1921
import static org.junit.Assert.assertTrue;
2022

2123
public class SystemEventFacadeEjbTest extends AbstractBeanTest {
@@ -42,25 +44,26 @@ public void testGetLatestSuccessByType() {
4244
@Test
4345
public void testDeleteAllDeletableSystemEvents() throws InterruptedException {
4446

45-
LocalDateTime earliest = LocalDateTime.now();
47+
LocalDateTime start = LocalDateTime.now();
48+
// Small delay for the timesteps to have different milliseconds
49+
Thread.sleep(5L);
4650
SystemEventDto systemEvent1 = creator.createSystemEvent(SystemEventType.FETCH_LAB_MESSAGES, new Date(), SystemEventStatus.ERROR);
4751
getSystemEventFacade().saveSystemEvent(systemEvent1);
48-
// Small delay for the persistence
49-
Thread.sleep(100L);
52+
Thread.sleep(5L);
5053

5154
LocalDateTime inBetween = LocalDateTime.now();
55+
Thread.sleep(5L);
56+
5257
SystemEventDto systemEvent2 = creator.createSystemEvent(SystemEventType.FETCH_LAB_MESSAGES, new Date(), SystemEventStatus.SUCCESS);
5358
getSystemEventFacade().saveSystemEvent(systemEvent2);
54-
// Small delay for the persistence
55-
Thread.sleep(100L);
5659

5760
SystemEventFacadeEjb systemEventFacadeEjb = (SystemEventFacadeEjb) getSystemEventFacade();
5861

59-
systemEventFacadeEjb.deleteAllDeletableSystemEvents(earliest);
60-
assertTrue(getAllSystemEvents().size() == 2);
62+
systemEventFacadeEjb.deleteAllDeletableSystemEvents(start);
63+
assertThat(getAllSystemEvents(), hasSize(2));
6164

6265
getSystemEventFacade().deleteAllDeletableSystemEvents(1);
63-
assertTrue(getAllSystemEvents().size() == 2);
66+
assertThat(getAllSystemEvents(), hasSize(2));
6467

6568
systemEventFacadeEjb.deleteAllDeletableSystemEvents(inBetween);
6669
assertEquals(systemEventFacadeEjb.fromDto(systemEvent2, null), getAllSystemEvents().get(0));

0 commit comments

Comments
 (0)