queue: add types for ingest -> indexer
This commit is contained in:
39
queue/sender_test.go
Normal file
39
queue/sender_test.go
Normal file
@@ -0,0 +1,39 @@
|
||||
package queue
|
||||
|
||||
import (
|
||||
"testing"
|
||||
|
||||
"github.com/go-json-experiment/json"
|
||||
)
|
||||
|
||||
func TestSenderUnique(t *testing.T) {
|
||||
// Salt, channel, and user should all produce differences in the sender ID.
|
||||
base := Sender([]byte("nijika"), "kessoku", "bocchi")
|
||||
salt := Sender([]byte("kita"), "kessoku", "bocchi")
|
||||
channel := Sender([]byte("nijika"), "sickhack", "bocchi")
|
||||
user := Sender([]byte("nijika"), "kessoku", "ryō")
|
||||
m := map[sender]struct{}{
|
||||
base: {},
|
||||
salt: {},
|
||||
channel: {},
|
||||
user: {},
|
||||
}
|
||||
if len(m) != 4 {
|
||||
t.Errorf("collision:\nbase: %v\nsalt: %v\nchan: %v\nuser: %v", base, salt, channel, user)
|
||||
}
|
||||
}
|
||||
|
||||
func TestSenderRoundTrip(t *testing.T) {
|
||||
want := Sender([]byte("nijika"), "kessoku", "bocchi")
|
||||
b, err := json.Marshal(want)
|
||||
if err != nil {
|
||||
t.Errorf("encode failed: %v", err)
|
||||
}
|
||||
var got sender
|
||||
if err := json.Unmarshal(b, &got); err != nil {
|
||||
t.Errorf("decode failed: %v", err)
|
||||
}
|
||||
if want != got {
|
||||
t.Errorf("round-trip failed:\nwant %v\ngot %v", want, got)
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user