From f8a19d2f4673e3f073050a0376fc4c387933adc9 Mon Sep 17 00:00:00 2001 From: Michiel Borkent Date: Wed, 18 Dec 2019 17:01:00 +0100 Subject: [PATCH] [#162] add java.util.Base64 --- reflection.json | 15 +++++++++++++++ src/babashka/impl/classes.clj | 3 +++ test/babashka/main_test.clj | 4 ++++ 3 files changed, 22 insertions(+) diff --git a/reflection.json b/reflection.json index 507ad76c..ee23dd4c 100644 --- a/reflection.json +++ b/reflection.json @@ -263,6 +263,21 @@ "allPublicMethods" : true, "allPublicFields" : true, "allPublicConstructors" : true +}, { + "name" : "java.util.Base64", + "allPublicMethods" : true, + "allPublicFields" : true, + "allPublicConstructors" : true +}, { + "name" : "java.util.Base64$Decoder", + "allPublicMethods" : true, + "allPublicFields" : true, + "allPublicConstructors" : true +}, { + "name" : "java.util.Base64$Encoder", + "allPublicMethods" : true, + "allPublicFields" : true, + "allPublicConstructors" : true }, { "name" : "java.util.concurrent.LinkedBlockingQueue", "allPublicMethods" : true, diff --git a/src/babashka/impl/classes.clj b/src/babashka/impl/classes.clj index be6cbec9..36965fc3 100644 --- a/src/babashka/impl/classes.clj +++ b/src/babashka/impl/classes.clj @@ -59,6 +59,9 @@ java.time.ZoneOffset java.time.temporal.TemporalAccessor java.util.regex.Pattern + java.util.Base64 + java.util.Base64$Decoder + java.util.Base64$Encoder sun.nio.fs.UnixPath ;; included because of permission check ] :custom-classes {'java.lang.Thread diff --git a/test/babashka/main_test.clj b/test/babashka/main_test.clj index 056246a0..81affbd8 100644 --- a/test/babashka/main_test.clj +++ b/test/babashka/main_test.clj @@ -297,6 +297,10 @@ (deftest Math-test (is (== 8.0 (bb nil "(Math/pow 2 3)")))) +(deftest Base64-test + (is (= "babashka" + (bb nil "(String. (.decode (java.util.Base64/getDecoder) (.encode (java.util.Base64/getEncoder) (.getBytes \"babashka\"))))")))) + ;;;; Scratch (comment