You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by bd...@apache.org on 2020/04/02 11:00:39 UTC

[sling-org-apache-sling-junit-teleporter] 02/05: SLING-9327 - add base64 encoding tests before switching encoder

This is an automated email from the ASF dual-hosted git repository.

bdelacretaz pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-junit-teleporter.git

commit a20c63bf3627ae85dba8415d96bf8b5df096d249
Author: Bertrand Delacretaz <bd...@apache.org>
AuthorDate: Thu Apr 2 12:38:56 2020 +0200

    SLING-9327 - add base64 encoding tests before switching encoder
---
 .../testing/teleporter/client/TeleporterHttpClient.java    |  6 +++++-
 .../teleporter/client/TeleporterHttpClientTest.java        | 14 ++++++++++++++
 2 files changed, 19 insertions(+), 1 deletion(-)

diff --git a/src/main/java/org/apache/sling/testing/teleporter/client/TeleporterHttpClient.java b/src/main/java/org/apache/sling/testing/teleporter/client/TeleporterHttpClient.java
index 2a5699e..2966335 100644
--- a/src/main/java/org/apache/sling/testing/teleporter/client/TeleporterHttpClient.java
+++ b/src/main/java/org/apache/sling/testing/teleporter/client/TeleporterHttpClient.java
@@ -100,10 +100,14 @@ class TeleporterHttpClient {
     int getHttpTimeoutSeconds() {
         return httpTimeoutSeconds;
     }
+
+    static String encodeBase64(String data) {
+        return Base64.getEncoder().encodeToString(data.getBytes());
+    }
     
     public void setConnectionCredentials(URLConnection c) {
         if(credentials != null && !credentials.isEmpty()) {
-            final String basicAuth = "Basic " + Base64.getEncoder().encodeToString(credentials.getBytes());
+            final String basicAuth = "Basic " + encodeBase64(credentials);
             c.setRequestProperty ("Authorization", basicAuth);
             log.debug("Credentials set");
         }
diff --git a/src/test/java/org/apache/sling/testing/teleporter/client/TeleporterHttpClientTest.java b/src/test/java/org/apache/sling/testing/teleporter/client/TeleporterHttpClientTest.java
index c746a37..fd8de5c 100644
--- a/src/test/java/org/apache/sling/testing/teleporter/client/TeleporterHttpClientTest.java
+++ b/src/test/java/org/apache/sling/testing/teleporter/client/TeleporterHttpClientTest.java
@@ -176,4 +176,18 @@ public class TeleporterHttpClientTest {
             // as expected due to timeout
         }
     }
+
+    @Test
+    public void testBase64Encoding() {
+        assertEquals("", TeleporterHttpClient.encodeBase64(""));
+        assertEquals("Zm9v", TeleporterHttpClient.encodeBase64("foo"));
+        assertEquals("dGhlIHF1aWNrIGJyb3duIGZveA==", TeleporterHttpClient.encodeBase64("the quick brown fox"));
+
+        try {
+            TeleporterHttpClient.encodeBase64(null);
+            fail("Expected a NullPointerException");
+        } catch(NullPointerException asExpected) {
+            // as expected
+        }
+    }
 }
\ No newline at end of file