diff options
author | Péter Szilágyi <peterke@gmail.com> | 2015-04-10 18:46:08 +0800 |
---|---|---|
committer | Péter Szilágyi <peterke@gmail.com> | 2015-04-10 18:46:08 +0800 |
commit | 7e54a9c07f10ff16aabfe8bd3944c9309d4efc06 (patch) | |
tree | 72024bdd40999c0e555851b3778e30b63f46be4b /whisper/message_test.go | |
parent | a4c8e947b0f4a07e851f7c8b420874ac411fdb69 (diff) | |
download | go-tangerine-7e54a9c07f10ff16aabfe8bd3944c9309d4efc06.tar.gz go-tangerine-7e54a9c07f10ff16aabfe8bd3944c9309d4efc06.tar.zst go-tangerine-7e54a9c07f10ff16aabfe8bd3944c9309d4efc06.zip |
whisper: rename test file according to Go style
Diffstat (limited to 'whisper/message_test.go')
-rw-r--r-- | whisper/message_test.go | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/whisper/message_test.go b/whisper/message_test.go new file mode 100644 index 000000000..93caa31b3 --- /dev/null +++ b/whisper/message_test.go @@ -0,0 +1,50 @@ +package whisper + +import ( + "bytes" + "crypto/elliptic" + "fmt" + "testing" + + "github.com/ethereum/go-ethereum/crypto" +) + +func TestSign(t *testing.T) { + prv, _ := crypto.GenerateKey() + msg := NewMessage([]byte("hello world")) + msg.sign(prv) + + pubKey := msg.Recover() + p1 := elliptic.Marshal(crypto.S256(), prv.PublicKey.X, prv.PublicKey.Y) + p2 := elliptic.Marshal(crypto.S256(), pubKey.X, pubKey.Y) + + if !bytes.Equal(p1, p2) { + t.Error("recovered pub key did not match") + } +} + +func TestMessageEncryptDecrypt(t *testing.T) { + prv1, _ := crypto.GenerateKey() + prv2, _ := crypto.GenerateKey() + + data := []byte("hello world") + msg := NewMessage(data) + envelope, err := msg.Seal(DefaultPow, Opts{ + From: prv1, + To: &prv2.PublicKey, + }) + if err != nil { + fmt.Println(err) + t.FailNow() + } + + msg1, err := envelope.Open(prv2) + if err != nil { + t.Error(err) + t.FailNow() + } + + if !bytes.Equal(msg1.Payload, data) { + t.Error("encryption error. data did not match") + } +} |