Fix regression in the HTTP request line

Adds a test that demonstrates a regression from M in
the HTTP request line when a proxied connection
is made. It only affects URLs with empty paths (i.e. ones
without even a '/' after the host / authority). For
example, on M the request line for a request to
new URL("http://myhost").openConnection() would be:

GET http://myhost HTTP/1.1

but on N, without this change, it would be:

GET http://myhost/ HTTP/1.1

This change reverts to the M behavior.

Bug: 29983827
Test: CtsLibcoreOkHttpTestCases and CtsLibcoreTestCases
Change-Id: I117bca1371e5311b85e0cee0d3d2528191ade182
(cherry picked from commit cd57d9eb83acc7a13ee576bfa22d4c490316ac18)
4 files changed
tree: ffb7efd54c800aca65133bc158031c3b1c98ef97
  1. android/
  2. benchmarks/
  3. mockwebserver/
  4. okcurl/
  5. okhttp/
  6. okhttp-android-support/
  7. okhttp-apache/
  8. okhttp-hpacktests/
  9. okhttp-testing-support/
  10. okhttp-tests/
  11. okhttp-urlconnection/
  12. okhttp-ws/
  13. okhttp-ws-tests/
  14. okio/
  15. samples/
  16. website/
  17. Android.mk
  18. BUG-BOUNTY.md
  19. CHANGELOG.md
  20. checkstyle.xml
  21. CONTRIBUTING.md
  22. deploy_website.sh
  23. jarjar-rules.txt
  24. LICENSE.txt
  25. MODULE_LICENSE_APACHE2
  26. pom.xml
  27. README.android
  28. README.md
README.md

OkHttp

An HTTP & SPDY client for Android and Java applications. For more information see the website and the wiki.

Download

Download the latest JAR or grab via Maven:

<dependency>
  <groupId>com.squareup.okhttp</groupId>
  <artifactId>okhttp</artifactId>
  <version>2.5.0</version>
</dependency>

or Gradle:

compile 'com.squareup.okhttp:okhttp:2.5.0'

Snapshots of the development version are available in Sonatype's snapshots repository.

MockWebServer

A library for testing HTTP, HTTPS, HTTP/2.0, and SPDY clients.

MockWebServer coupling with OkHttp is essential for proper testing of SPDY and HTTP/2.0 so that code can be shared.

Download

Download the latest JAR or grab via Maven:

<dependency>
  <groupId>com.squareup.okhttp</groupId>
  <artifactId>mockwebserver</artifactId>
  <version>2.5.0</version>
  <scope>test</scope>
</dependency>

or Gradle:

testCompile 'com.squareup.okhttp:mockwebserver:2.5.0'

License

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.