25 lines
550 B
Go
25 lines
550 B
Go
package service
|
|
|
|
import "testing"
|
|
|
|
func TestSecretCodecRoundTrip(t *testing.T) {
|
|
codec, err := NewSecretCodec("test-master-key")
|
|
if err != nil {
|
|
t.Fatalf("new codec: %v", err)
|
|
}
|
|
ciphertext, err := codec.Encrypt("plain-secret")
|
|
if err != nil {
|
|
t.Fatalf("encrypt: %v", err)
|
|
}
|
|
if ciphertext == "plain-secret" {
|
|
t.Fatalf("secret should not be stored as plaintext")
|
|
}
|
|
plain, err := codec.Decrypt(ciphertext)
|
|
if err != nil {
|
|
t.Fatalf("decrypt: %v", err)
|
|
}
|
|
if plain != "plain-secret" {
|
|
t.Fatalf("unexpected plaintext: %s", plain)
|
|
}
|
|
}
|