jgit/org.eclipse.jgit.http.test
Thomas Wolf 308bdb5d1b Apache HTTP: run more tests
Factor out the test parameterization to use both connection factories
into a common super class and use it in more tests.

This made HttpClientTests.testV2HttpSubsequentResponse() fail for
Apache HTTP. The test used the pattern

  - create POST connection
  - setDoOutput(true)
  - connect()
  - write output stream
  - get & read input stream

This pattern is never used in JGit, which actually calls connect() only
in one case in LFS, and that's on a HEAD request.

The above pattern works on JDK, but fails on Apache HTTP because with
Apache HTTP a connect() actually executes the full request including
writing the entity. To work with Apache HTTP, the pattern would need
to be

  - create POST connection
  - setDoOutput(true)
  - write output stream
  - connect()
  - get & read input stream

which is fine for both. JDK connects implicitly in getOutputStream()
and treats the later explicit connect() as a no-op, and Apache works
because the entity is written when connect() is called.

Because JDK connects implicitly on getOutputStream(), the following
pattern also works with JDK:

  - create POST connection
  - setDoOutput(true)
  - write output stream
  - get & read input stream

Support this with Apache HTTP too: let getInputStream() execute
the request if it wasn't executed already.

Remove explicit connect() calls from test code, since JGit doesn't do
those either.

Change-Id: Ica038c00a7b8edcc01d5660d18e961146305b87f
Signed-off-by: Thomas Wolf <thomas.wolf@paranor.ch>
2019-08-26 22:53:10 +02:00
..
.settings Do not require test bundles to export all packages 2019-08-09 13:17:00 +02:00
META-INF Fix bundle localization of Apache SSH bundle 2019-06-21 17:54:06 +02:00
src/org/eclipse/jgit/http/test Fix javadoc in org.eclipse.jgit.http.test 2017-12-17 20:05:55 +01:00
tst/org/eclipse/jgit Apache HTTP: run more tests 2019-08-26 22:53:10 +02:00
.classpath Configure classpath for separate test sources in Eclipse 2018-10-17 11:08:24 +09:00
.gitignore Make HTTP test project work in Eclipse 2010-01-23 11:29:25 -08:00
.project Enforce the use of Java5 API:s only (with a few exceptions) 2011-12-16 01:01:36 +01:00
BUILD HttpClientConnection.getHeaderFields should support multiple values for same header 2018-07-23 06:56:14 +01:00
build.properties Add path src/ to source path in build.properties 2016-08-06 19:12:06 -04:00
org.eclipse.jgit.http--All-Tests.launch Add the other test launchers as favorites 2013-06-16 23:33:29 +02:00
plugin.properties Fix bundle localization of Apache SSH bundle 2019-06-21 17:54:06 +02:00
pom.xml Prepare 5.5.0-SNAPSHOT builds 2019-06-13 03:01:15 +02:00