]> git.r.bdr.sh - rbdr/mobius/blobdiff - hotline/server_blackbox_test.go
Remove user from Dockerfile
[rbdr/mobius] / hotline / server_blackbox_test.go
index 3e23d27f6ada00f9dde75623d0f2fabff3d1e921..06e7771eef1342d84402235206d2fb489f576aed 100644 (file)
@@ -1,10 +1,13 @@
 package hotline
 
 import (
+       "cmp"
+       "encoding/binary"
        "encoding/hex"
        "github.com/stretchr/testify/assert"
        "log/slog"
        "os"
+       "slices"
        "testing"
 )
 
@@ -30,6 +33,13 @@ func assertTransferBytesEqual(t *testing.T, wantHexDump string, got []byte) bool
        return assert.Equal(t, wantHexDump, hex.Dump(clean))
 }
 
+var tranSortFunc = func(a, b Transaction) int {
+       return cmp.Compare(
+               binary.BigEndian.Uint16(a.clientID[:]),
+               binary.BigEndian.Uint16(b.clientID[:]),
+       )
+}
+
 // tranAssertEqual compares equality of transactions slices after stripping out the random transaction ID
 func tranAssertEqual(t *testing.T, tran1, tran2 []Transaction) bool {
        var newT1 []Transaction
@@ -67,5 +77,8 @@ func tranAssertEqual(t *testing.T, tran1, tran2 []Transaction) bool {
                newT2 = append(newT2, trans)
        }
 
+       slices.SortFunc(newT1, tranSortFunc)
+       slices.SortFunc(newT2, tranSortFunc)
+
        return assert.Equal(t, newT1, newT2)
 }