Skip to content

Commit

Permalink
eclipse-ditto#890: fixed time based unit tests which did not handle t…
Browse files Browse the repository at this point in the history
…imezones correctly

Signed-off-by: Thomas Jaeckle <thomas.jaeckle@bosch.io>
  • Loading branch information
thjaeckle committed Dec 8, 2020
1 parent 2ba3216 commit 9fb9007
Show file tree
Hide file tree
Showing 7 changed files with 22 additions and 21 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@

import java.time.Instant;
import java.time.LocalDateTime;
import java.time.ZoneOffset;
import java.time.ZoneId;
import java.time.temporal.ChronoUnit;

import org.eclipse.ditto.model.base.headers.DittoHeaders;
Expand Down Expand Up @@ -91,7 +91,7 @@ public void createPolicyWithSubjectHavingExpiryTimestamp() {
.plusHours(1)
.plusMinutes(7)
.plusSeconds(23);
final Instant expiry = localDateTime.toInstant(ZoneOffset.UTC);
final Instant expiry = localDateTime.atZone(ZoneId.systemDefault()).toInstant();
final SubjectExpiry subjectExpiry = SubjectExpiry.newInstance(expiry);
final Subject subjectWithExpiry = Subject.newInstance(SubjectId.newInstance("foo-issuer:bar-subject"),
SubjectType.GENERATED, subjectExpiry);
Expand All @@ -105,7 +105,7 @@ public void createPolicyWithSubjectHavingExpiryTimestamp() {
final Instant expectedAdjustedExpiry = localDateTime
.truncatedTo(ChronoUnit.MINUTES)
.plusSeconds(30)
.toInstant(ZoneOffset.UTC);
.atZone(ZoneId.systemDefault()).toInstant();
final SubjectExpiry expectedSubjectExpiry = SubjectExpiry.newInstance(expectedAdjustedExpiry);
final Subject expectedSubjectWithExpiry = Subject.newInstance(subjectWithExpiry.getId(),
subjectWithExpiry.getType(), expectedSubjectExpiry);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@

import java.time.Instant;
import java.time.LocalDateTime;
import java.time.ZoneOffset;
import java.time.ZoneId;
import java.time.temporal.ChronoUnit;
import java.util.stream.StreamSupport;

Expand Down Expand Up @@ -87,7 +87,7 @@ public void modifyPolicyEntriesWithSubjectHavingExpiryTimestamp() {
.plusHours(1)
.plusMinutes(7)
.plusSeconds(23);
final Instant expiry = localDateTime.toInstant(ZoneOffset.UTC);
final Instant expiry = localDateTime.atZone(ZoneId.systemDefault()).toInstant();
final SubjectExpiry subjectExpiry = SubjectExpiry.newInstance(expiry);
final Subject subjectWithExpiry = Subject.newInstance(SubjectId.newInstance("foo-issuer:bar-subject"),
SubjectType.GENERATED, subjectExpiry);
Expand All @@ -101,7 +101,7 @@ public void modifyPolicyEntriesWithSubjectHavingExpiryTimestamp() {
final Instant expectedAdjustedExpiry = localDateTime
.truncatedTo(ChronoUnit.MINUTES)
.plusSeconds(30)
.toInstant(ZoneOffset.UTC);
.atZone(ZoneId.systemDefault()).toInstant();
final SubjectExpiry expectedSubjectExpiry = SubjectExpiry.newInstance(expectedAdjustedExpiry);
final Subject expectedSubjectWithExpiry = Subject.newInstance(subjectWithExpiry.getId(),
subjectWithExpiry.getType(), expectedSubjectExpiry);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@

import java.time.Instant;
import java.time.LocalDateTime;
import java.time.ZoneOffset;
import java.time.ZoneId;
import java.time.temporal.ChronoUnit;
import java.util.Arrays;
import java.util.Collections;
Expand Down Expand Up @@ -94,7 +94,7 @@ public void modifyPolicyEntryWithSubjectHavingExpiryTimestamp() {
.plusHours(1)
.plusMinutes(7)
.plusSeconds(23);
final Instant expiry = localDateTime.toInstant(ZoneOffset.UTC);
final Instant expiry = localDateTime.atZone(ZoneId.systemDefault()).toInstant();
final SubjectExpiry subjectExpiry = SubjectExpiry.newInstance(expiry);
final Subject subjectWithExpiry = Subject.newInstance(SubjectId.newInstance("foo-issuer:bar-subject"),
SubjectType.GENERATED, subjectExpiry);
Expand All @@ -110,7 +110,7 @@ public void modifyPolicyEntryWithSubjectHavingExpiryTimestamp() {
final Instant expectedAdjustedExpiry = localDateTime
.truncatedTo(ChronoUnit.MINUTES)
.plusSeconds(30)
.toInstant(ZoneOffset.UTC);
.atZone(ZoneId.systemDefault()).toInstant();
final SubjectExpiry expectedSubjectExpiry = SubjectExpiry.newInstance(expectedAdjustedExpiry);
final Subject expectedSubjectWithExpiry = Subject.newInstance(subjectWithExpiry.getId(),
subjectWithExpiry.getType(), expectedSubjectExpiry);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@

import java.time.Instant;
import java.time.LocalDateTime;
import java.time.ZoneOffset;
import java.time.ZoneId;
import java.time.temporal.ChronoUnit;

import org.eclipse.ditto.model.base.headers.DittoHeaders;
Expand Down Expand Up @@ -88,7 +88,7 @@ public void modifyPolicyWithSubjectHavingExpiryTimestamp() {
.plusHours(1)
.plusMinutes(7)
.plusSeconds(23);
final Instant expiry = localDateTime.toInstant(ZoneOffset.UTC);
final Instant expiry = localDateTime.atZone(ZoneId.systemDefault()).toInstant();
final SubjectExpiry subjectExpiry = SubjectExpiry.newInstance(expiry);
final Subject subjectWithExpiry = Subject.newInstance(SubjectId.newInstance("foo-issuer:bar-subject"),
SubjectType.GENERATED, subjectExpiry);
Expand All @@ -102,7 +102,7 @@ public void modifyPolicyWithSubjectHavingExpiryTimestamp() {
final Instant expectedAdjustedExpiry = localDateTime
.truncatedTo(ChronoUnit.MINUTES)
.plusSeconds(30)
.toInstant(ZoneOffset.UTC);
.atZone(ZoneId.systemDefault()).toInstant();
final SubjectExpiry expectedSubjectExpiry = SubjectExpiry.newInstance(expectedAdjustedExpiry);
final Subject expectedSubjectWithExpiry = Subject.newInstance(subjectWithExpiry.getId(),
subjectWithExpiry.getType(), expectedSubjectExpiry);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@

import java.time.Instant;
import java.time.LocalDateTime;
import java.time.ZoneOffset;
import java.time.ZoneId;
import java.time.temporal.ChronoUnit;

import org.eclipse.ditto.model.base.headers.DittoHeaders;
Expand Down Expand Up @@ -80,11 +80,11 @@ public void modifySubjectOfPolicyWithExpiryTimestamp() {
.plusHours(1)
.plusMinutes(7)
.plusSeconds(52);
final Instant expiry = localDateTime.toInstant(ZoneOffset.UTC);
final Instant expiry = localDateTime.atZone(ZoneId.systemDefault()).toInstant();
final Instant expectedAdjustedExpiry = localDateTime
.truncatedTo(ChronoUnit.MINUTES)
.plusMinutes(1)
.toInstant(ZoneOffset.UTC);
.atZone(ZoneId.systemDefault()).toInstant();

final Subject subject = Subject.newInstance(SubjectId.newInstance(SubjectIssuer.INTEGRATION, "this-is-me"),
TestConstants.Policy.SUBJECT_TYPE, SubjectExpiry.newInstance(expiry));
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@

import java.time.Instant;
import java.time.LocalDateTime;
import java.time.ZoneOffset;
import java.time.ZoneId;
import java.time.temporal.ChronoUnit;

import org.eclipse.ditto.model.base.headers.DittoHeaders;
Expand Down Expand Up @@ -83,11 +83,11 @@ public void modifySubjectOfPolicyWithExpiryTimestamp() {
.plusHours(1)
.plusMinutes(7)
.plusSeconds(52);
final Instant expiry = localDateTime.toInstant(ZoneOffset.UTC);
final Instant expiry = localDateTime.atZone(ZoneId.systemDefault()).toInstant();
final Instant expectedAdjustedExpiry = localDateTime
.truncatedTo(ChronoUnit.MINUTES)
.plusMinutes(1)
.toInstant(ZoneOffset.UTC);
.atZone(ZoneId.systemDefault()).toInstant();

final Subjects subjects = Subjects.newInstance(
Subject.newInstance(SubjectId.newInstance(SubjectIssuer.INTEGRATION, "this-is-me"),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -149,7 +149,7 @@ public void roundingUpToOneDay() {
public void doesNotRoundUpMatchingGranularity() {
final ModifySubjectStrategy underTest = createStrategy("1m");

final LocalDateTime givenExpiry = LocalDateTime.now().truncatedTo(ChronoUnit.MINUTES);
final LocalDateTime givenExpiry = LocalDateTime.now().truncatedTo(ChronoUnit.MINUTES).plusMinutes(1);
final LocalDateTime expectedAdjustedExpiry = givenExpiry;

doTestSubjectExpiryAdjustment(underTest, givenExpiry, expectedAdjustedExpiry);
Expand All @@ -166,11 +166,12 @@ private static void doTestSubjectExpiryAdjustment(final ModifySubjectStrategy un
final LocalDateTime expectedExpiry) {

final Subject subject = Subject.newInstance(SubjectId.newInstance(SubjectIssuer.INTEGRATION, "this-is-me"),
TestConstants.Policy.SUBJECT_TYPE, SubjectExpiry.newInstance(expiry.toInstant(ZoneOffset.UTC)));
TestConstants.Policy.SUBJECT_TYPE, SubjectExpiry.newInstance(
expiry.atOffset(ZoneOffset.UTC).toInstant()));
final Subject expectedSubject =
Subject.newInstance(SubjectId.newInstance(SubjectIssuer.INTEGRATION, "this-is-me"),
TestConstants.Policy.SUBJECT_TYPE,
SubjectExpiry.newInstance(expectedExpiry.toInstant(ZoneOffset.UTC)));
SubjectExpiry.newInstance(expectedExpiry.atOffset(ZoneOffset.UTC).toInstant()));

final CommandStrategy.Context<PolicyId> context = getDefaultContext();
final DittoHeaders dittoHeaders = DittoHeaders.empty();
Expand Down

0 comments on commit 9fb9007

Please sign in to comment.