aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTill <2353100+S7evinK@users.noreply.github.com>2024-01-29 20:44:43 +0100
committerGitHub <noreply@github.com>2024-01-29 20:44:43 +0100
commita3a18fbcce29c84eb96c3db9c723da951e74ba91 (patch)
tree0e4ece384cc4c566703c72ca9ae9652959ac6b9b
parent87f028db27e62cca71dadc5988dc8d37f5f20af4 (diff)
Fix x86 tests (#3317)
x86 tests broke with #3298 (Not exactly the tests modified here, but `TestMessageHistoryVisibility`)
-rw-r--r--syncapi/types/types.go8
-rw-r--r--syncapi/types/types_test.go17
2 files changed, 21 insertions, 4 deletions
diff --git a/syncapi/types/types.go b/syncapi/types/types.go
index bca11855..26faf7c0 100644
--- a/syncapi/types/types.go
+++ b/syncapi/types/types.go
@@ -286,8 +286,8 @@ func NewTopologyTokenFromString(tok string) (token TopologyToken, err error) {
if i > len(positions) {
break
}
- var pos int
- pos, err = strconv.Atoi(p)
+ var pos int64
+ pos, err = strconv.ParseInt(p, 10, 64)
if err != nil {
return
}
@@ -318,8 +318,8 @@ func NewStreamTokenFromString(tok string) (token StreamingToken, err error) {
if i >= len(positions) {
break
}
- var pos int
- pos, err = strconv.Atoi(p)
+ var pos int64
+ pos, err = strconv.ParseInt(p, 10, 64)
if err != nil {
err = ErrMalformedSyncToken
return
diff --git a/syncapi/types/types_test.go b/syncapi/types/types_test.go
index 35e1882c..6c616ab0 100644
--- a/syncapi/types/types_test.go
+++ b/syncapi/types/types_test.go
@@ -3,6 +3,7 @@ package types
import (
"context"
"encoding/json"
+ "math"
"reflect"
"testing"
@@ -33,12 +34,28 @@ func TestSyncTokens(t *testing.T) {
"s3_1_0_0_0_0_2_0_5": StreamingToken{3, 1, 0, 0, 0, 0, 2, 0, 5}.String(),
"s3_1_2_3_5_0_0_0_6": StreamingToken{3, 1, 2, 3, 5, 0, 0, 0, 6}.String(),
"t3_1": TopologyToken{3, 1}.String(),
+ "t9223372036854775807_9223372036854775807": TopologyToken{Depth: math.MaxInt64, PDUPosition: math.MaxInt64}.String(),
+ "s9223372036854775807_1_2_3_5_0_0_0_6": StreamingToken{math.MaxInt64, 1, 2, 3, 5, 0, 0, 0, 6}.String(),
}
for a, b := range shouldPass {
if a != b {
t.Errorf("expected %q, got %q", a, b)
}
+
+ // parse as topology token
+ if a[0] == 't' {
+ if _, err := NewTopologyTokenFromString(a); err != nil {
+ t.Errorf("expected %q to pass, but got %q", a, err)
+ }
+ }
+
+ // parse as sync token
+ if a[0] == 's' {
+ if _, err := NewStreamTokenFromString(a); err != nil {
+ t.Errorf("expected %q to pass, but got %q", a, err)
+ }
+ }
}
shouldFail := []string{