aboutsummaryrefslogtreecommitdiffstats
path: root/org.eclipse.jgit.test/tst/org/eclipse/jgit/transport/ProtocolV0ParserTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'org.eclipse.jgit.test/tst/org/eclipse/jgit/transport/ProtocolV0ParserTest.java')
-rw-r--r--org.eclipse.jgit.test/tst/org/eclipse/jgit/transport/ProtocolV0ParserTest.java19
1 files changed, 19 insertions, 0 deletions
diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/transport/ProtocolV0ParserTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/transport/ProtocolV0ParserTest.java
index b2a4af30ab..61b7fb619a 100644
--- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/transport/ProtocolV0ParserTest.java
+++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/transport/ProtocolV0ParserTest.java
@@ -98,6 +98,25 @@ public class ProtocolV0ParserTest {
"f900c8326a43303685c46b279b9f70411bff1a4b"));
}
+ @Test
+ public void testRecvWantsWithSessionID()
+ throws PackProtocolException, IOException {
+ PacketLineIn pckIn = formatAsPacketLine(String.join(" ", "want",
+ "4624442d68ee402a94364191085b77137618633e", "thin-pack",
+ "agent=JGit.test/0.0.1", "session-id=client-session-id", "\n"),
+ "want f900c8326a43303685c46b279b9f70411bff1a4b\n",
+ PacketLineIn.end());
+ ProtocolV0Parser parser = new ProtocolV0Parser(defaultConfig());
+ FetchV0Request request = parser.recvWants(pckIn);
+ assertTrue(request.getClientCapabilities()
+ .contains(GitProtocolConstants.OPTION_THIN_PACK));
+ assertEquals(1, request.getClientCapabilities().size());
+ assertEquals("client-session-id", request.getClientSID());
+ assertThat(request.getWantIds(),
+ hasOnlyObjectIds("4624442d68ee402a94364191085b77137618633e",
+ "f900c8326a43303685c46b279b9f70411bff1a4b"));
+ }
+
/*
* First round of protocol v0 negotiation. Client send wants, no
* capabilities.