code.gitea.io/gitea@v1.22.3/modules/secret/secret_test.go (about) 1 // Copyright 2019 The Gitea Authors. All rights reserved. 2 // SPDX-License-Identifier: MIT 3 4 package secret 5 6 import ( 7 "testing" 8 9 "github.com/stretchr/testify/assert" 10 ) 11 12 func TestEncryptDecrypt(t *testing.T) { 13 hex, err := EncryptSecret("foo", "baz") 14 assert.NoError(t, err) 15 str, _ := DecryptSecret("foo", hex) 16 assert.Equal(t, "baz", str) 17 18 hex, err = EncryptSecret("bar", "baz") 19 assert.NoError(t, err) 20 str, _ = DecryptSecret("foo", hex) 21 assert.NotEqual(t, "baz", str) 22 23 _, err = DecryptSecret("a", "b") 24 assert.ErrorContains(t, err, "invalid hex string") 25 26 _, err = DecryptSecret("a", "bb") 27 assert.ErrorContains(t, err, "the key (maybe SECRET_KEY?) might be incorrect: AesDecrypt ciphertext too short") 28 29 _, err = DecryptSecret("a", "0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef") 30 assert.ErrorContains(t, err, "the key (maybe SECRET_KEY?) might be incorrect: AesDecrypt invalid decrypted base64 string") 31 }