39 lines
		
	
	
		
			681 B
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			39 lines
		
	
	
		
			681 B
		
	
	
	
		
			Go
		
	
	
	
	
	
package whisper
 | 
						|
 | 
						|
import (
 | 
						|
	"fmt"
 | 
						|
	"testing"
 | 
						|
	"time"
 | 
						|
)
 | 
						|
 | 
						|
func TestEvent(t *testing.T) {
 | 
						|
	res := make(chan *Message, 1)
 | 
						|
	whisper := New()
 | 
						|
	id := whisper.NewIdentity()
 | 
						|
	whisper.Watch(Filter{
 | 
						|
		To: id,
 | 
						|
		Fn: func(msg *Message) {
 | 
						|
			res <- msg
 | 
						|
		},
 | 
						|
	})
 | 
						|
 | 
						|
	msg := NewMessage([]byte(fmt.Sprintf("Hello world. This is whisper-go. Incase you're wondering; the time is %v", time.Now())))
 | 
						|
	envelope, err := msg.Seal(DefaultPow, Opts{
 | 
						|
		Ttl:  DefaultTtl,
 | 
						|
		From: id,
 | 
						|
		To:   &id.PublicKey,
 | 
						|
	})
 | 
						|
	if err != nil {
 | 
						|
		fmt.Println(err)
 | 
						|
		t.FailNow()
 | 
						|
	}
 | 
						|
 | 
						|
	tick := time.NewTicker(time.Second)
 | 
						|
	whisper.postEvent(envelope)
 | 
						|
	select {
 | 
						|
	case <-res:
 | 
						|
	case <-tick.C:
 | 
						|
		t.Error("did not receive message")
 | 
						|
	}
 | 
						|
}
 |