Index: trunk/test/functional/org/openstreetmap/josm/tools/HttpClientTest.java
===================================================================
--- trunk/test/functional/org/openstreetmap/josm/tools/HttpClientTest.java	(revision 15741)
+++ trunk/test/functional/org/openstreetmap/josm/tools/HttpClientTest.java	(revision 15742)
@@ -316,4 +316,32 @@
     public void testTakesTooLong() throws IOException {
         HttpClient.create(new URL("https://httpbin.org/delay/1")).setReadTimeout(500).connect(progress);
+    }
+
+    /**
+     * Test reading Deflate-encoded data.
+     * @throws IOException if any I/O error occurs
+     */
+    @Test
+    public void testDeflate() throws IOException {
+        final HttpClient.Response response = HttpClient.create(new URL("https://httpbin.org/deflate")).connect(progress);
+        assertThat(response.getResponseCode(), is(200));
+        try (InputStream in = response.getContent();
+             JsonReader json = JsonProvider.provider().createReader(in)) {
+            assertThat(json.readObject().getBoolean("deflated"), is(true));
+        }
+    }
+
+    /**
+     * Test reading Gzip-encoded data.
+     * @throws IOException if any I/O error occurs
+     */
+    @Test
+    public void testGzip() throws IOException {
+        final HttpClient.Response response = HttpClient.create(new URL("https://httpbin.org/gzip")).connect(progress);
+        assertThat(response.getResponseCode(), is(200));
+        try (InputStream in = response.getContent();
+             JsonReader json = JsonProvider.provider().createReader(in)) {
+            assertThat(json.readObject().getBoolean("gzipped"), is(true));
+        }
     }
 
