--- /dev/null
+package dsakey
+
+import (
+ "crypto/openpgp"
+// "fmt"
+ "bytes"
+ "time"
+ "testing"
+)
+
+func testSignAndVerify(t *testing.T, priv *openpgp.Entity) {
+ msg := []byte("testing")
+ w := new(bytes.Buffer)
+ err := openpgp.DetachSign(w, priv, bytes.NewBuffer(msg))
+ if err != nil {
+ t.Errorf("error signing: %s", err)
+ return
+ }
+
+ _, err = openpgp.CheckDetachedSignature(openpgp.EntityList{priv}, bytes.NewBuffer(msg), w)
+ if err != nil {
+ t.Errorf("Verify failed")
+ }
+}
+
+func TestKey(t *testing.T) {
+ key, err := GenKey()
+ if err != nil {
+ t.Errorf("gen dsa key failed: %s", err)
+ return
+ }
+ priv, err := NewEntity(key, time.Seconds(), "a", "b", "c")
+ if err != nil {
+ t.Errorf("new entity failed: %s", err)
+ } else {
+ testSignAndVerify(t, priv)
+ }
+}