111 lines
3.2 KiB
Go
111 lines
3.2 KiB
Go
package go_pgp
|
|
|
|
import (
|
|
"path/filepath"
|
|
"testing"
|
|
)
|
|
|
|
func TestReadArmoredKeyRingBinary(t *testing.T) {
|
|
binary, err := readTestFile("testReceiverEntityArmored.pgp")
|
|
if err != nil {
|
|
t.Fatal("'testdata/testReceiverEntityArmored.pgp' could not be found")
|
|
}
|
|
|
|
entity, err := ReadArmoredKeyRingBinary(binary)
|
|
if err != nil {
|
|
t.Fatal("'testdata/testReceiverEntityArmored.pgp' could not be parsed")
|
|
}
|
|
|
|
if len(entity.EntityList) == 0 {
|
|
t.Fatal("no entities could be retrieved from 'testdata/testReceiverEntityArmored.pgp'")
|
|
}
|
|
|
|
binary, err = readTestFile("testReceiverEntityArmored_bad.pgp")
|
|
if err != nil {
|
|
t.Fatal("'testdata/testReceiverEntityArmored_bad.pgp' could not be found")
|
|
}
|
|
|
|
entity, err = ReadArmoredKeyRingBinary(binary)
|
|
if err == nil {
|
|
t.Fatal("'testdata/testReceiverEntityArmored_bad.pgp' should not be parseable")
|
|
}
|
|
}
|
|
|
|
func TestReadKeyRingBinary(t *testing.T) {
|
|
binary, err := readTestFile("testReceiverEntity.pgp")
|
|
if err != nil {
|
|
t.Fatal("'testdata/testReceiverEntity.pgp' could not be found")
|
|
}
|
|
|
|
entity, err := ReadKeyRingBinary(binary)
|
|
if err != nil {
|
|
t.Fatal("'testdata/testReceiverEntity.pgp' could not be parsed")
|
|
}
|
|
|
|
if len(entity.EntityList) == 0 {
|
|
t.Fatal("no entities could be retrieved from 'testdata/testReceiverEntity.pgp'")
|
|
}
|
|
|
|
binary, err = readTestFile("testReceiverEntity_bad.pgp")
|
|
if err != nil {
|
|
t.Fatal("'testdata/testReceiverEntity_bad.pgp' could not be found")
|
|
}
|
|
|
|
entity, err = ReadKeyRingBinary(binary)
|
|
if err == nil {
|
|
t.Fatal("'testdata/testReceiverEntity_bad.pgp' should not be parseable")
|
|
}
|
|
}
|
|
|
|
func TestReadArmoredKeyRingFromFile(t *testing.T) {
|
|
folder, err := filepath.Abs("testdata")
|
|
if err != nil {
|
|
t.Fatal("absolute path to 'testdata' folder could not be determined")
|
|
}
|
|
|
|
entity, err := ReadArmoredKeyRingFromFile(filepath.Join(folder, "testReceiverEntityArmored.pgp"))
|
|
if err != nil {
|
|
t.Fatal("'testdata/testReceiverEntityArmored.pgp' could not be parsed")
|
|
}
|
|
|
|
if len(entity.EntityList) == 0 {
|
|
t.Fatal("no entities could be retrieved from 'testdata/testReceiverEntityArmored.pgp'")
|
|
}
|
|
|
|
_, err = ReadArmoredKeyRingFromFile(filepath.Join(folder, "testReceiverEntityArmored_bad.pgp"))
|
|
if err == nil {
|
|
t.Error("'testdata/testReceiverEntityArmored_bad.pgp' should not be parseable")
|
|
}
|
|
|
|
_, err = ReadArmoredKeyRingFromFile(filepath.Join(folder, "doesNotExist.pgp"))
|
|
if err == nil {
|
|
t.Error("'testdata/doesNotExist.pgp' should not be found")
|
|
}
|
|
}
|
|
|
|
func TestReadKeyRingFromFile(t *testing.T) {
|
|
folder, err := filepath.Abs("testdata")
|
|
if err != nil {
|
|
t.Fatal("absolute path to 'testdata' folder could not be determined")
|
|
}
|
|
|
|
entity, err := ReadKeyRingFromFile(filepath.Join(folder, "testReceiverEntity.pgp"))
|
|
if err != nil {
|
|
t.Fatal("'testdata/testReceiverEntity.pgp' could not be parsed")
|
|
}
|
|
|
|
if len(entity.EntityList) == 0 {
|
|
t.Fatal("no entities could be retrieved from 'testdata/testReceiverEntity.pgp'")
|
|
}
|
|
|
|
_, err = ReadKeyRingFromFile(filepath.Join(folder, "testReceiverEntity_bad.pgp"))
|
|
if err == nil {
|
|
t.Error("'testdata/testReceiverEntity_bad.pgp' should not be parseable")
|
|
}
|
|
|
|
_, err = ReadKeyRingFromFile(filepath.Join(folder, "doesNotExist.pgp"))
|
|
if err == nil {
|
|
t.Error("'testdata/doesNotExist.pgp' should not be found")
|
|
}
|
|
}
|