mirror of
https://github.com/getsops/sops.git
synced 2026-02-05 12:45:21 +01:00
43 lines
1.0 KiB
Go
43 lines
1.0 KiB
Go
package pgp
|
|
|
|
import (
|
|
"bytes"
|
|
"testing"
|
|
"testing/quick"
|
|
)
|
|
|
|
func TestPGP(t *testing.T) {
|
|
key := NewMasterKeyFromFingerprint("1022470DE3F0BC54BC6AB62DE05550BC07FB1A0A")
|
|
f := func(x []byte) bool {
|
|
if x == nil || len(x) == 0 {
|
|
return true
|
|
}
|
|
if err := key.Encrypt(x); err != nil {
|
|
t.Errorf("Failed to encrypt: %#v err: %v", x, err)
|
|
return false
|
|
}
|
|
k, err := key.Decrypt()
|
|
if err != nil {
|
|
t.Errorf("Failed to decrypt: %#v err: %v", x, err)
|
|
return false
|
|
}
|
|
return bytes.Equal(x, k)
|
|
}
|
|
if err := quick.Check(f, nil); err != nil {
|
|
t.Error(err)
|
|
}
|
|
}
|
|
|
|
func TestPGPKeySourceFromString(t *testing.T) {
|
|
s := "C8C5 2C0A B2A4 8174 01E8 12C8 F3CC 3233 3FAD 9F1E, C8C5 2C0A B2A4 8174 01E8 12C8 F3CC 3233 3FAD 9F1E"
|
|
ks := MasterKeysFromFingerprintString(s)
|
|
expected := "C8C52C0AB2A4817401E812C8F3CC32333FAD9F1E"
|
|
if ks[0].Fingerprint != expected {
|
|
t.Errorf("Fingerprint does not match. Got %s, expected %s", ks[0].Fingerprint, expected)
|
|
}
|
|
|
|
if ks[1].Fingerprint != expected {
|
|
t.Error("Fingerprint does not match")
|
|
}
|
|
}
|