21 lines
626 B
Go
21 lines
626 B
Go
package activity
|
|
|
|
import (
|
|
"testing"
|
|
"time"
|
|
|
|
"github.com/local/glpi-neural-brain/internal/model"
|
|
)
|
|
|
|
func TestPublishGeneratesUniqueIDsForSameTimestamp(t *testing.T) {
|
|
broker := New(10)
|
|
ids := []string{}
|
|
broker.SetSink(func(a model.Activity) { ids = append(ids, a.ID) })
|
|
ts := time.Date(2026, 8, 8, 6, 51, 17, 269360900, time.UTC)
|
|
broker.Publish(model.Activity{Type: "source.security.materialized", Timestamp: ts})
|
|
broker.Publish(model.Activity{Type: "source.security.started", Timestamp: ts})
|
|
if len(ids) != 2 || ids[0] == ids[1] {
|
|
t.Fatalf("event IDs must remain unique for identical clock ticks: %#v", ids)
|
|
}
|
|
}
|