/*-
* ============LICENSE_START=======================================================
- * Copyright (C) 2019-2020 Nordix Foundation.
+ * Copyright (C) 2019-2021 Nordix Foundation.
* Modifications Copyright (C) 2019-2020 AT&T Intellectual Property. All rights reserved.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertTrue;
-import java.util.Date;
+import java.sql.Timestamp;
+import java.time.Instant;
import org.junit.Test;
import org.onap.policy.models.base.PfConceptKey;
import org.onap.policy.models.base.PfReferenceKey;
-import org.onap.policy.models.base.PfValidationResult;
/**
* DAO test for ToscaTimeInterval.
public void testTimeIntervalPojo() {
assertNotNull(new JpaToscaTimeInterval());
assertNotNull(new JpaToscaTimeInterval(new PfReferenceKey()));
- assertNotNull(new JpaToscaTimeInterval(new PfReferenceKey(), new Date(), new Date()));
+ assertNotNull(new JpaToscaTimeInterval(new PfReferenceKey(), Instant.now(), Instant.now()));
assertNotNull(new JpaToscaTimeInterval(new JpaToscaTimeInterval()));
assertThatThrownBy(() -> new JpaToscaTimeInterval((PfReferenceKey) null)).hasMessageMatching(KEY_IS_NULL);
assertThatThrownBy(() -> new JpaToscaTimeInterval(null, null, null)).hasMessageMatching(KEY_IS_NULL);
- assertThatThrownBy(() -> new JpaToscaTimeInterval(null, null, new Date())).hasMessageMatching(KEY_IS_NULL);
+ assertThatThrownBy(() -> new JpaToscaTimeInterval(null, null, Instant.now())).hasMessageMatching(KEY_IS_NULL);
- assertThatThrownBy(() -> new JpaToscaTimeInterval(null, new Date(), null)).hasMessageMatching(KEY_IS_NULL);
+ assertThatThrownBy(() -> new JpaToscaTimeInterval(null, Instant.now(), null)).hasMessageMatching(KEY_IS_NULL);
- assertThatThrownBy(() -> new JpaToscaTimeInterval(null, new Date(), new Date()))
+ assertThatThrownBy(() -> new JpaToscaTimeInterval(null, Instant.now(), Instant.now()))
.hasMessageMatching(KEY_IS_NULL);
assertThatThrownBy(() -> new JpaToscaTimeInterval(new PfReferenceKey(), null, null))
.hasMessageMatching("startTime is marked .*on.*ull but is null");
- assertThatThrownBy(() -> new JpaToscaTimeInterval(new PfReferenceKey(), null, new Date()))
+ assertThatThrownBy(() -> new JpaToscaTimeInterval(new PfReferenceKey(), null, Instant.now()))
.hasMessageMatching("startTime is marked .*on.*ull but is null");
- assertThatThrownBy(() -> new JpaToscaTimeInterval(new PfReferenceKey(), new Date(), null))
+ assertThatThrownBy(() -> new JpaToscaTimeInterval(new PfReferenceKey(), Instant.now(), null))
.hasMessageMatching("endTime is marked .*on.*ull but is null");
assertThatThrownBy(() -> new JpaToscaServiceTemplate((JpaToscaServiceTemplate) null))
.isInstanceOf(NullPointerException.class);
+ }
+ @Test
+ public void testTimeInterval() {
PfConceptKey ttiParentKey = new PfConceptKey("tParentKey", "0.0.1");
PfReferenceKey ttiKey = new PfReferenceKey(ttiParentKey, "trigger0");
- Date startTime = new Date(1000);
- Date endTime = new Date(2000);
+ Instant startTime = Instant.ofEpochSecond(1000);
+ Instant endTime = Instant.ofEpochSecond(2000);
JpaToscaTimeInterval tti = new JpaToscaTimeInterval(ttiKey, startTime, endTime);
JpaToscaTimeInterval tdtClone0 = new JpaToscaTimeInterval(tti);
assertNotEquals(0, tti.compareTo(otherDt));
otherDt.setKey(ttiKey);
assertNotEquals(0, tti.compareTo(otherDt));
- otherDt.setStartTime(startTime);
+ otherDt.setStartTime(Timestamp.from(startTime));
assertNotEquals(0, tti.compareTo(otherDt));
- otherDt.setEndTime(endTime);
+ otherDt.setEndTime(Timestamp.from(endTime));
assertEquals(0, tti.compareTo(otherDt));
assertEquals(1, tti.getKeys().size());
new JpaToscaTimeInterval().clean();
tti.clean();
assertEquals(tdtClone0, tti);
+ }
- assertFalse(new JpaToscaTimeInterval().validate(new PfValidationResult()).isValid());
- assertTrue(tti.validate(new PfValidationResult()).isValid());
+ @Test
+ public void testTimeIntervalValidation() {
+ Instant startTime = Instant.ofEpochSecond(1000);
+ Instant endTime = Instant.ofEpochSecond(2000);
+ JpaToscaTimeInterval tti = setUpJpaToscaTimeInterval(startTime, endTime);
+ assertFalse(new JpaToscaTimeInterval().validate("").isValid());
+ assertTrue(tti.validate("").isValid());
tti.setStartTime(null);
- assertFalse(tti.validate(new PfValidationResult()).isValid());
- tti.setStartTime(new Date(endTime.getTime() + 1));
- assertFalse(tti.validate(new PfValidationResult()).isValid());
- tti.setStartTime(startTime);
- assertTrue(tti.validate(new PfValidationResult()).isValid());
+ assertFalse(tti.validate("").isValid());
+
+ tti.setStartTime(Timestamp.from(endTime.plusSeconds(1)));
+ assertFalse(tti.validate("").isValid());
+ tti.setStartTime(Timestamp.from(startTime));
+ assertTrue(tti.validate("").isValid());
tti.setEndTime(null);
- assertFalse(tti.validate(new PfValidationResult()).isValid());
- tti.setEndTime(new Date(startTime.getTime() - 1));
- assertFalse(tti.validate(new PfValidationResult()).isValid());
- tti.setEndTime(endTime);
- assertTrue(tti.validate(new PfValidationResult()).isValid());
+ assertFalse(tti.validate("").isValid());
+ tti.setEndTime(Timestamp.from(startTime.minusSeconds(1)));
+ assertFalse(tti.validate("").isValid());
+ tti.setEndTime(Timestamp.from(endTime));
+ assertTrue(tti.validate("").isValid());
+
+ assertThatThrownBy(() -> tti.validate(null)).hasMessageMatching("fieldName is marked .*on.*ull but is null");
+ }
+
+ private JpaToscaTimeInterval setUpJpaToscaTimeInterval(Instant startTime, Instant endTime) {
+ PfConceptKey ttiParentKey = new PfConceptKey("tParentKey", "0.0.1");
+ PfReferenceKey ttiKey = new PfReferenceKey(ttiParentKey, "trigger0");
+ JpaToscaTimeInterval tti = new JpaToscaTimeInterval(ttiKey, startTime, endTime);
- assertThatThrownBy(() -> tti.validate(null)).hasMessageMatching("resultIn is marked .*on.*ull but is null");
+ return tti;
}
}