Merge branch 'stable-2.12'
* stable-2.12: Fix missing query results when label=0 and related relational operators OutputStreamQuery: Only return current patch set when visible to user Fix NPE in SubmitRuleEvaluator Protect the TrackingFooters.extract from null input parameter Fix index-activate and index-start documentation Reapply: Revert "Use changeRefsById to track existing revisions" Change-Id: I9f8e82f38c2ec4cf273a6a29c7dc634d8c28b6c1
This commit is contained in:
@@ -32,6 +32,7 @@ import com.google.gerrit.common.data.LabelType;
|
||||
import com.google.gerrit.common.data.Permission;
|
||||
import com.google.gerrit.extensions.api.changes.ReviewInput;
|
||||
import com.google.gerrit.extensions.api.changes.ReviewInput.NotifyHandling;
|
||||
import com.google.gerrit.extensions.api.projects.BranchInput;
|
||||
import com.google.gerrit.extensions.client.InheritableBoolean;
|
||||
import com.google.gerrit.extensions.common.ChangeInfo;
|
||||
import com.google.gerrit.extensions.common.ChangeMessageInfo;
|
||||
@@ -46,12 +47,14 @@ import com.google.gerrit.testutil.FakeEmailSender.Message;
|
||||
import com.google.gerrit.testutil.TestTimeUtil;
|
||||
|
||||
import org.eclipse.jgit.revwalk.RevCommit;
|
||||
import org.eclipse.jgit.transport.PushResult;
|
||||
import org.junit.AfterClass;
|
||||
import org.junit.Before;
|
||||
import org.junit.BeforeClass;
|
||||
import org.junit.Test;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
public abstract class AbstractPushForReview extends AbstractDaemonTest {
|
||||
@@ -488,4 +491,37 @@ public abstract class AbstractPushForReview extends AbstractDaemonTest {
|
||||
r.assertErrorStatus(
|
||||
"not Signed-off-by author/committer/uploader in commit message footer");
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testPushSameCommitTwiceUsingMagicBranchBaseOption()
|
||||
throws Exception {
|
||||
grant(Permission.PUSH, project, "refs/heads/master");
|
||||
PushOneCommit.Result rBase = pushTo("refs/heads/master");
|
||||
rBase.assertOkStatus();
|
||||
|
||||
gApi.projects()
|
||||
.name(project.get())
|
||||
.branch("foo")
|
||||
.create(new BranchInput());
|
||||
|
||||
PushOneCommit push =
|
||||
pushFactory.create(db, admin.getIdent(), testRepo, PushOneCommit.SUBJECT,
|
||||
"b.txt", "anotherContent");
|
||||
|
||||
PushOneCommit.Result r = push.to("refs/for/master");
|
||||
r.assertOkStatus();
|
||||
|
||||
PushResult pr = GitUtil.pushHead(
|
||||
testRepo, "refs/for/foo%base=" + rBase.getCommit().name(), false, false);
|
||||
assertThat(pr.getMessages()).contains("changes: new: 1, refs: 1, done");
|
||||
|
||||
List<ChangeInfo> changes = query(r.getCommit().name());
|
||||
assertThat(changes).hasSize(2);
|
||||
ChangeInfo c1 = get(changes.get(0).id);
|
||||
ChangeInfo c2 = get(changes.get(1).id);
|
||||
assertThat(c1.project).isEqualTo(c2.project);
|
||||
assertThat(c1.branch).isNotEqualTo(c2.branch);
|
||||
assertThat(c1.changeId).isEqualTo(c2.changeId);
|
||||
assertThat(c1.currentRevision).isEqualTo(c2.currentRevision);
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user