2016-01-18 20:43:02 -08:00
|
|
|
package elkrem
|
|
|
|
|
|
|
|
import (
|
|
|
|
"testing"
|
|
|
|
|
2017-01-05 13:56:27 -08:00
|
|
|
"github.com/roasbeef/btcd/chaincfg/chainhash"
|
2016-01-18 20:43:02 -08:00
|
|
|
)
|
|
|
|
|
2016-06-29 16:54:24 -07:00
|
|
|
// TestElkremBig tries 10K hashes
|
2016-01-18 20:43:02 -08:00
|
|
|
func TestElkremBig(t *testing.T) {
|
2016-06-29 16:54:24 -07:00
|
|
|
var rcv ElkremReceiver
|
2016-07-25 16:16:56 -07:00
|
|
|
|
2017-01-05 13:56:27 -08:00
|
|
|
sndr := NewElkremSender(chainhash.DoubleHashH([]byte("elktest")))
|
2016-07-25 16:16:56 -07:00
|
|
|
|
2016-01-18 20:43:02 -08:00
|
|
|
for n := uint64(0); n < 10000; n++ {
|
2016-06-29 16:54:24 -07:00
|
|
|
sha, err := sndr.AtIndex(n)
|
2016-01-18 20:43:02 -08:00
|
|
|
if err != nil {
|
|
|
|
t.Fatal(err)
|
|
|
|
}
|
2016-07-25 16:16:56 -07:00
|
|
|
|
|
|
|
if err = rcv.AddNext(sha); err != nil {
|
2016-01-18 20:43:02 -08:00
|
|
|
t.Fatal(err)
|
|
|
|
}
|
|
|
|
}
|
2016-07-25 16:16:56 -07:00
|
|
|
|
2016-01-18 23:28:14 -08:00
|
|
|
ReceiverSerdesTest(t, &rcv)
|
2016-07-25 16:16:56 -07:00
|
|
|
|
2016-01-18 20:43:02 -08:00
|
|
|
for n := uint64(0); n < 10000; n += 500 {
|
2016-07-25 16:16:56 -07:00
|
|
|
if _, err := rcv.AtIndex(n); err != nil {
|
2016-01-18 20:43:02 -08:00
|
|
|
t.Fatal(err)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2016-06-29 16:54:24 -07:00
|
|
|
// TestElkremLess tries 10K hashes
|
|
|
|
func TestElkremLess(t *testing.T) {
|
|
|
|
var rcv ElkremReceiver
|
2016-07-25 16:16:56 -07:00
|
|
|
|
2017-01-05 13:56:27 -08:00
|
|
|
sndr := NewElkremSender(chainhash.DoubleHashH([]byte("elktest2")))
|
2016-07-25 16:16:56 -07:00
|
|
|
|
2016-01-18 20:43:02 -08:00
|
|
|
for n := uint64(0); n < 5000; n++ {
|
2016-06-29 16:54:24 -07:00
|
|
|
sha, err := sndr.AtIndex(n)
|
2016-01-18 20:43:02 -08:00
|
|
|
if err != nil {
|
|
|
|
t.Fatal(err)
|
|
|
|
}
|
2016-07-25 16:16:56 -07:00
|
|
|
|
|
|
|
if err = rcv.AddNext(sha); err != nil {
|
2016-01-18 20:43:02 -08:00
|
|
|
t.Fatal(err)
|
|
|
|
}
|
|
|
|
}
|
2016-07-25 16:16:56 -07:00
|
|
|
|
2016-01-18 20:43:02 -08:00
|
|
|
for n := uint64(0); n < 5000; n += 500 {
|
2016-07-25 16:16:56 -07:00
|
|
|
if _, err := rcv.AtIndex(n); err != nil {
|
2016-01-18 20:43:02 -08:00
|
|
|
t.Fatal(err)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|