aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ctrack/register/models.py4
-rw-r--r--ctrack/register/tests/test_event_models.py24
2 files changed, 26 insertions, 2 deletions
diff --git a/ctrack/register/models.py b/ctrack/register/models.py
index 53b65a0..e4dea89 100644
--- a/ctrack/register/models.py
+++ b/ctrack/register/models.py
@@ -107,8 +107,8 @@ class SingleDateMixin(models.Model):
class TwinDateMixin(models.Model):
- start_date = models.DateField()
- end_date = models.DateField()
+ start_date = models.DateField(blank=False, null=False)
+ end_date = models.DateField(blank=True, null=True)
class Meta:
abstract = True
diff --git a/ctrack/register/tests/test_event_models.py b/ctrack/register/tests/test_event_models.py
index 678d8b5..702ca27 100644
--- a/ctrack/register/tests/test_event_models.py
+++ b/ctrack/register/tests/test_event_models.py
@@ -54,6 +54,30 @@ def test_caf_twin_date_events(allowed_type, user, caf):
assert e.type_descriptor == allowed_type
+def test_caf_twin_date_event_no_end_date(user, caf):
+ e = CAFTwinDateEvent.objects.create(
+ type_descriptor="CAF_PEER_REVIEW_PERIOD",
+ related_caf=caf,
+ short_description="CAF received for X Company",
+ start_date="2020-10-10",
+ comments="Nice comments for this event",
+ user=user,
+ )
+ assert e.end_date is None
+
+
+def test_caf_twin_date_event_no_start_date_not_allowed(user, caf):
+ with pytest.raises(IntegrityError):
+ CAFTwinDateEvent.objects.create(
+ type_descriptor="CAF_PEER_REVIEW_PERIOD",
+ related_caf=caf,
+ short_description="CAF received for X Company",
+ end_date="2020-10-10",
+ comments="Nice comments for this event",
+ user=user,
+ )
+
+
def test_cannot_add_two_caf_initial_caf_received_events_on_same_date(user, caf):
CAFSingleDateEvent.objects.create(
type_descriptor="CAF_INITIAL_CAF_RECEIVED",