Merge branch 'stable-3.9' into stable-3.10 * stable-3.9: Fix `Owned Files` status icon when some files are already approved Fix misleading log message when adding reviewers Add status icon to the `Owned Files` tab header Unify check if change contains owners submit requirements Show owners files statuses and `Owned Files` tab in replacment mode Remove `allFilesApproved` state from the `OwnersState` Show `Owned Files` even when all files were approved Don't display `Owned Files` when not current PS is viewed Ensure that `Owned Files` is not switchable when no files are owned Match Owned Files entries even when owners.expandGroups == false Change-Id: I13ca03f357426a8971a376dcc624f1f419929a32
diff --git a/owners-autoassign/src/main/java/com/googlesource/gerrit/owners/common/AutoassignConfigModule.java b/owners-autoassign/src/main/java/com/googlesource/gerrit/owners/common/AutoassignConfigModule.java index dfa812d..865d971 100644 --- a/owners-autoassign/src/main/java/com/googlesource/gerrit/owners/common/AutoassignConfigModule.java +++ b/owners-autoassign/src/main/java/com/googlesource/gerrit/owners/common/AutoassignConfigModule.java
@@ -33,7 +33,7 @@ .annotatedWith(Exports.named(PROJECT_CONFIG_AUTOASSIGN_WIP_CHANGES)) .toInstance( new ProjectConfigEntry( - "Auto-assign WIP changes", InheritableBoolean.TRUE, InheritableBoolean.class)); + "Auto-assign WIP changes", InheritableBoolean.INHERIT, InheritableBoolean.class)); bind(ProjectConfigEntry.class) .annotatedWith(Exports.named(PROJECT_CONFIG_AUTOASSIGN_FIELD)) .toInstance(
diff --git a/owners/src/test/java/com/googlesource/gerrit/owners/OwnersSubmitRequirementIT.java b/owners/src/test/java/com/googlesource/gerrit/owners/OwnersSubmitRequirementIT.java index 0e7e40b..f7421fe 100644 --- a/owners/src/test/java/com/googlesource/gerrit/owners/OwnersSubmitRequirementIT.java +++ b/owners/src/test/java/com/googlesource/gerrit/owners/OwnersSubmitRequirementIT.java
@@ -16,7 +16,6 @@ package com.googlesource.gerrit.owners; import static com.google.common.truth.Truth.assertThat; -import static com.google.common.truth.Truth8.assertThat; import com.google.gerrit.acceptance.TestPlugin; import com.google.gerrit.acceptance.UseLocalDisk;
diff --git a/owners/src/test/java/com/googlesource/gerrit/owners/OwnersSubmitRequirementITAbstract.java b/owners/src/test/java/com/googlesource/gerrit/owners/OwnersSubmitRequirementITAbstract.java index 2135b40..3db9dcb 100644 --- a/owners/src/test/java/com/googlesource/gerrit/owners/OwnersSubmitRequirementITAbstract.java +++ b/owners/src/test/java/com/googlesource/gerrit/owners/OwnersSubmitRequirementITAbstract.java
@@ -16,7 +16,6 @@ package com.googlesource.gerrit.owners; import static com.google.common.truth.Truth.assertThat; -import static com.google.common.truth.Truth8.assertThat; import static com.google.gerrit.acceptance.testsuite.project.TestProjectUpdate.allowLabel; import static com.google.gerrit.server.group.SystemGroupBackend.REGISTERED_USERS; import static com.google.gerrit.server.project.testing.TestLabels.labelBuilder;
diff --git a/owners/src/test/java/com/googlesource/gerrit/owners/OwnersSubmitRequirementTest.java b/owners/src/test/java/com/googlesource/gerrit/owners/OwnersSubmitRequirementTest.java index bd6c232..1a411c3 100644 --- a/owners/src/test/java/com/googlesource/gerrit/owners/OwnersSubmitRequirementTest.java +++ b/owners/src/test/java/com/googlesource/gerrit/owners/OwnersSubmitRequirementTest.java
@@ -15,7 +15,6 @@ package com.googlesource.gerrit.owners; import static com.google.common.truth.Truth.assertThat; -import static com.google.common.truth.Truth8.assertThat; import static com.google.gerrit.server.project.testing.TestLabels.codeReview; import static com.google.gerrit.server.project.testing.TestLabels.labelBuilder; import static com.google.gerrit.server.project.testing.TestLabels.value;
diff --git a/owners/src/test/java/com/googlesource/gerrit/owners/restapi/GetFilesOwnersITAbstract.java b/owners/src/test/java/com/googlesource/gerrit/owners/restapi/GetFilesOwnersITAbstract.java index 1633783..4593e33 100644 --- a/owners/src/test/java/com/googlesource/gerrit/owners/restapi/GetFilesOwnersITAbstract.java +++ b/owners/src/test/java/com/googlesource/gerrit/owners/restapi/GetFilesOwnersITAbstract.java
@@ -41,16 +41,12 @@ import com.googlesource.gerrit.owners.entities.GroupOwner; import com.googlesource.gerrit.owners.entities.Owner; import com.googlesource.gerrit.owners.restapi.GetFilesOwners.LabelNotFoundException; -import java.util.Arrays; import java.util.Map; import javax.servlet.http.HttpServletResponse; import org.apache.commons.compress.utils.Sets; -import org.eclipse.jgit.internal.storage.dfs.DfsRepositoryDescription; import org.eclipse.jgit.internal.storage.dfs.InMemoryRepository; import org.eclipse.jgit.junit.TestRepository; -import org.eclipse.jgit.lib.Config; import org.eclipse.jgit.transport.FetchResult; -import org.eclipse.jgit.util.FS; import org.junit.Test; public abstract class GetFilesOwnersITAbstract extends LightweightPluginDaemonTest { @@ -375,31 +371,18 @@ public TestRepository<InMemoryRepository> cloneProjectWithMetaRefs(Project.NameKey project) throws Exception { - String uri = registerRepoConnection(project, admin); + TestRepository<InMemoryRepository> clonedProject = cloneProject(project); String initialRef = "refs/remotes/origin/config"; - DfsRepositoryDescription desc = new DfsRepositoryDescription("clone of " + project.get()); - - InMemoryRepository.Builder b = new InMemoryRepository.Builder().setRepositoryDescription(desc); - if (uri.startsWith("ssh://")) { - // SshTransport depends on a real FS to read ~/.ssh/config, but InMemoryRepository by default - // uses a null FS. - // Avoid leaking user state into our tests. - b.setFS(FS.detect().setUserHome(null)); - } - InMemoryRepository dest = b.build(); - Config cfg = dest.getConfig(); - cfg.setString("remote", "origin", "url", uri); - cfg.setStringList( - "remote", - "origin", - "fetch", - Arrays.asList( - "+refs/heads/*:refs/remotes/origin/*", "+refs/meta/config:refs/remotes/origin/config")); - TestRepository<InMemoryRepository> testRepo = GitUtil.newTestRepository(dest); - FetchResult result = testRepo.git().fetch().setRemote("origin").call(); + FetchResult result = + clonedProject + .git() + .fetch() + .setRemote("origin") + .setRefSpecs("+refs/meta/config:refs/remotes/origin/config") + .call(); if (result.getTrackingRefUpdate(initialRef) != null) { - testRepo.reset(initialRef); + clonedProject.reset(initialRef); } - return testRepo; + return clonedProject; } }
diff --git a/owners/src/test/java/com/googlesource/gerrit/owners/restapi/GetFilesOwnersSubmitRequirementsIT.java b/owners/src/test/java/com/googlesource/gerrit/owners/restapi/GetFilesOwnersSubmitRequirementsIT.java index f5c80b7..d45deb5 100644 --- a/owners/src/test/java/com/googlesource/gerrit/owners/restapi/GetFilesOwnersSubmitRequirementsIT.java +++ b/owners/src/test/java/com/googlesource/gerrit/owners/restapi/GetFilesOwnersSubmitRequirementsIT.java
@@ -28,6 +28,7 @@ import com.google.gerrit.entities.RefNames; import com.google.gerrit.extensions.api.changes.ReviewInput; import com.google.gerrit.extensions.restapi.Response; +import com.google.gerrit.server.config.SitePaths; import com.google.gerrit.server.project.testing.TestLabels; import com.google.inject.Inject; import com.googlesource.gerrit.owners.common.LabelDefinition; @@ -44,6 +45,7 @@ @UseLocalDisk public class GetFilesOwnersSubmitRequirementsIT extends GetFilesOwnersITAbstract { @Inject private ProjectOperations projectOperations; + @Inject private SitePaths sitePaths; @Override public void setUpTestPlugin() throws Exception { @@ -53,7 +55,7 @@ // globally pluginCfg.setBoolean("owners", null, "enableSubmitRequirement", true); Files.writeString( - server.getSitePath().resolve("etc").resolve("owners.config"), + sitePaths.etc_dir.resolve("owners.config"), pluginCfg.toText(), StandardOpenOption.CREATE, StandardOpenOption.APPEND);