github.com/kyma-incubator/compass/components/director@v0.0.0-20230623144113-d764f56ff805/internal/util/base64_test.go (about) 1 package util 2 3 import ( 4 "encoding/base64" 5 "testing" 6 7 "github.com/stretchr/testify/require" 8 ) 9 10 func TestBase64Decoding(t *testing.T) { 11 rawString := "hello world" 12 encodedOnce := base64.StdEncoding.EncodeToString([]byte(rawString)) 13 encodedTwice := base64.StdEncoding.EncodeToString([]byte(encodedOnce)) 14 15 t.Run("test decode non-base64 string", func(t *testing.T) { 16 result := TryDecodeBase64(rawString) 17 require.Equal(t, []byte(rawString), result) 18 }) 19 20 t.Run("test decode single base64 encoded string", func(t *testing.T) { 21 result := TryDecodeBase64(encodedOnce) 22 require.Equal(t, []byte(rawString), result) 23 }) 24 25 t.Run("test decode double base64 encoded string", func(t *testing.T) { 26 result := TryDecodeBase64(encodedTwice) 27 require.Equal(t, []byte(rawString), result) 28 }) 29 }