queue from Dequeue to Syn for SynAck

main
Bel LaPointe 2024-04-15 13:18:14 -06:00
parent 8193bf7377
commit e85a2d25a1
2 changed files with 7 additions and 7 deletions

View File

@ -35,9 +35,9 @@ func (q Queue) Enqueue(ctx context.Context, b []byte) error {
return err
}
func (q Queue) Dequeue(ctx context.Context) (string, []byte, error) {
func (q Queue) Syn(ctx context.Context) (string, []byte, error) {
for {
reservation, m, err := q.dequeue(ctx)
reservation, m, err := q.syn(ctx)
if reservation != nil || err != nil {
return string(reservation), m, err
}
@ -50,7 +50,7 @@ func (q Queue) Dequeue(ctx context.Context) (string, []byte, error) {
}
}
func (q Queue) dequeue(ctx context.Context) ([]byte, []byte, error) {
func (q Queue) syn(ctx context.Context) ([]byte, []byte, error) {
now := time.Now().Unix()
reservation := []byte(uuid.New().String())
var payload []byte

View File

@ -25,13 +25,13 @@ func TestQueue(t *testing.T) {
}
})
t.Run("dequeue", func(t *testing.T) {
t.Run("syn ack", func(t *testing.T) {
found := map[string]struct{}{}
for i := 0; i < 39; i++ {
if reservation, b, err := q.Dequeue(ctx); err != nil {
t.Fatal(i, "dequeue err", err)
if reservation, b, err := q.Syn(ctx); err != nil {
t.Fatal(i, "syn err", err)
} else if _, ok := found[string(b)]; ok {
t.Errorf("dequeued %q twice (%+v)", b, found)
t.Errorf("syn'd %q twice (%+v)", b, found)
} else if err := q.Ack(ctx, reservation); err != nil {
t.Fatal(i, "failed to ack", err)
} else {