CLI email sender

This commit is contained in:
Bel LaPointe
2019-07-03 11:48:52 -06:00
commit 4ca33e1c7b
50 changed files with 9996 additions and 0 deletions

59
.email_test.go Executable file
View File

@@ -0,0 +1,59 @@
package contact
import (
"fmt"
"io/ioutil"
"local/encryptor"
"os"
"testing"
)
func Test_Emailer_Send(t *testing.T) {
em := NewEmailer("bbarl64@gmail.com")
private, public := encryptor.NewKeyPair()
if _, err := os.Stat("../system/keys/pri.key"); os.IsNotExist(err) {
ioutil.WriteFile("../system/keys/pri.key", []byte(private), 0777)
}
if _, err := os.Stat("../system/keys/pub.key"); os.IsNotExist(err) {
ioutil.WriteFile("../system/keys/pub.key", []byte(public), 0777)
}
if pribytes, err := ioutil.ReadFile("../system/keys/pri.key"); err == nil {
private = string(pribytes)
} else {
panic(err)
}
if pubbytes, err := ioutil.ReadFile("../system/keys/pub.key"); err == nil {
public = string(pubbytes)
} else {
panic(err)
}
enc := encryptor.NewEncryptor(private, public)
msg := "hello to the world out there!"
if err := em.Send("test_encryptor", enc.Encrypt(msg)); err != nil {
panic(err)
}
ioutil.WriteFile("./last.msg", []byte(enc.Encrypt(msg)), 0777)
}
func Test_Emailer_Check(t *testing.T) {
var private, public string
if pribytes, err := ioutil.ReadFile("../system/keys/pri.key"); err == nil {
private = string(pribytes)
} else {
panic(err)
}
if pubbytes, err := ioutil.ReadFile("../system/keys/pub.key"); err == nil {
public = string(pubbytes)
} else {
panic(err)
}
enc := encryptor.NewEncryptor(private, public)
em := NewEmailer("bbarl64@gmail.com")
emails := em.Check()
if len(emails) > 0 {
fmt.Println(emails[0])
fmt.Println("Decrypted:", enc.Decrypt(emails[0].Body))
}
}