aboutsummaryrefslogtreecommitdiffstats
path: root/org.eclipse.jgit.test
diff options
context:
space:
mode:
authorIvan Frade <ifrade@google.com>2023-11-29 10:51:04 -0800
committerIvan Frade <ifrade@google.com>2023-11-29 14:18:12 -0800
commit5552242588b8dd4dab155324cc8b12a3c61dd1e5 (patch)
tree82af861637d54595cf0c9566116abcd7e8b97965 /org.eclipse.jgit.test
parentacf97be2d650ee9c24084498360617a6246a1235 (diff)
downloadjgit-5552242588b8dd4dab155324cc8b12a3c61dd1e5.tar.gz
jgit-5552242588b8dd4dab155324cc8b12a3c61dd1e5.zip
FooterLine: First line cannot be a footer
The first line of the commit message cannot be a footer line. This restriction was dropped in commit [1] while adding multiline footers. This affects at least the git-numberer gerrit plugin, that even have a test for it [2]. Reintroduce the restriction that the first line of the commit message cannot be a footer and bring the test from git-numberer to jgit. [1] https://review.gerrithub.io/c/eclipse-jgit/jgit/+/1172664 [2] https://chromium.googlesource.com/infra/gerrit-plugins/git-numberer/+/refs/heads/main/src/test/java/com/googlesource/chromium/plugins/gitnumberer/GetFooterLinesTest.java Change-Id: Id3fa6b8614664dbc3fdccffe1006b0b9752a8de6
Diffstat (limited to 'org.eclipse.jgit.test')
-rw-r--r--org.eclipse.jgit.test/tst/org/eclipse/jgit/revwalk/FooterLineTest.java20
1 files changed, 20 insertions, 0 deletions
diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/revwalk/FooterLineTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/revwalk/FooterLineTest.java
index 303aedcd00..ca6fd4644e 100644
--- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/revwalk/FooterLineTest.java
+++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/revwalk/FooterLineTest.java
@@ -369,6 +369,26 @@ public class FooterLineTest extends RepositoryTestCase {
f.getValue());
}
+ @Test
+ public void testFirstLineNeverFooter() {
+ String msg = buildMessage(
+ String.join("\n", "First-Line: is never a footer", "Foo: ter",
+ "1-is: also a footer"));
+ List<FooterLine> footers = FooterLine.fromMessage(msg);
+ assertNotNull(footers);
+ assertEquals(2, footers.size());
+ }
+
+ @Test
+ public void testLineAfterFooters() {
+ String msg = buildMessage(
+ String.join("\n", "Subject line: is never a footer", "Foo: ter",
+ "1-is: also a footer", "this is not a footer"));
+ List<FooterLine> footers = FooterLine.fromMessage(msg);
+ assertNotNull(footers);
+ assertEquals(2, footers.size());
+ }
+
private String buildMessage(String msg) {
StringBuilder buf = new StringBuilder();
buf.append("tree " + ObjectId.zeroId().name() + "\n");