From a2341f3ce2e98f221dc60f0c200ca34d260c2a64 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Pfeuffer?= Date: Mon, 23 Nov 2020 16:55:40 +0100 Subject: [PATCH] Do not mark default branch as stale --- .../main/java/sonia/scm/repository/Branch.java | 3 ++- .../java/sonia/scm/repository/BranchTest.java | 18 ++++++++++++++++-- 2 files changed, 18 insertions(+), 3 deletions(-) diff --git a/scm-core/src/main/java/sonia/scm/repository/Branch.java b/scm-core/src/main/java/sonia/scm/repository/Branch.java index b37648513e..d0213a00c2 100644 --- a/scm-core/src/main/java/sonia/scm/repository/Branch.java +++ b/scm-core/src/main/java/sonia/scm/repository/Branch.java @@ -196,7 +196,8 @@ public final class Branch implements Serializable, Validateable { } public boolean isStale() { - return getLastCommitDate() + return !isDefaultBranch() + && getLastCommitDate() .map(Instant::ofEpochMilli) .map(d -> Duration.between(d, now())) .map(d -> d.toDays()) diff --git a/scm-core/src/test/java/sonia/scm/repository/BranchTest.java b/scm-core/src/test/java/sonia/scm/repository/BranchTest.java index dcb3ae63a7..113a687c9e 100644 --- a/scm-core/src/test/java/sonia/scm/repository/BranchTest.java +++ b/scm-core/src/test/java/sonia/scm/repository/BranchTest.java @@ -30,6 +30,7 @@ import java.time.temporal.ChronoUnit; import static java.time.Instant.now; import static org.assertj.core.api.Assertions.assertThat; +import static sonia.scm.repository.Branch.defaultBranch; import static sonia.scm.repository.Branch.normalBranch; class BranchTest { @@ -49,13 +50,26 @@ class BranchTest { @Test void shouldNotTagNotSoOldBranchAsStale() { - long moreThanTwoWeeksAgo = + long notYetTwoWeeksAgo = now() .minus(14, ChronoUnit.DAYS) .plus(1, ChronoUnit.MINUTES) .toEpochMilli(); - Branch branch = normalBranch("hog", "42", moreThanTwoWeeksAgo); + Branch branch = normalBranch("hog", "42", notYetTwoWeeksAgo); + + assertThat(branch.isStale()).isFalse(); + } + + @Test + void shouldNotTagDefaultBranchAsStale() { + long moreThanTwoWeeksAgo = + now() + .minus(14, ChronoUnit.DAYS) + .minus(1, ChronoUnit.MINUTES) + .toEpochMilli(); + + Branch branch = defaultBranch("hog", "42", moreThanTwoWeeksAgo); assertThat(branch.isStale()).isFalse(); }