Skip to content

Commit 397e5c4

Browse files
committed
Change genericParser benchmarks (runParallel)
1 parent 73cd770 commit 397e5c4

File tree

1 file changed

+38
-21
lines changed

1 file changed

+38
-21
lines changed

helpers_test.go

Lines changed: 38 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1051,9 +1051,11 @@ func benchGenericParseTypeInt[V GenericTypeInteger](b *testing.B, name string, t
10511051
var err error
10521052
b.ReportAllocs()
10531053
b.ResetTimer()
1054-
for n := 0; n < b.N; n++ {
1055-
v, err = genericParseType[V](strconv.FormatInt(test.value, 10))
1056-
}
1054+
b.RunParallel(func(pb *testing.PB) {
1055+
for pb.Next() {
1056+
v, err = genericParseType[V](strconv.FormatInt(test.value, 10))
1057+
}
1058+
})
10571059
if test.bits <= int(unsafe.Sizeof(V(0)))*8 {
10581060
require.NoError(t, err)
10591061
require.Equal(t, V(test.value), v)
@@ -1127,9 +1129,11 @@ func benchGenericParseTypeUInt[V GenericTypeInteger](b *testing.B, name string,
11271129
var err error
11281130
b.ReportAllocs()
11291131
b.ResetTimer()
1130-
for n := 0; n < b.N; n++ {
1131-
v, err = genericParseType[V](strconv.FormatUint(test.value, 10))
1132-
}
1132+
b.RunParallel(func(pb *testing.PB) {
1133+
for pb.Next() {
1134+
v, err = genericParseType[V](strconv.FormatUint(test.value, 10))
1135+
}
1136+
})
11331137
if test.bits <= int(unsafe.Sizeof(V(0)))*8 {
11341138
require.NoError(t, err)
11351139
require.Equal(t, V(test.value), v)
@@ -1169,9 +1173,11 @@ func Benchmark_GenericParseTypeFloats(b *testing.B) {
11691173
var err error
11701174
b.ReportAllocs()
11711175
b.ResetTimer()
1172-
for n := 0; n < b.N; n++ {
1173-
v, err = genericParseType[float32](test.str)
1174-
}
1176+
b.RunParallel(func(pb *testing.PB) {
1177+
for pb.Next() {
1178+
v, err = genericParseType[float32](test.str)
1179+
}
1180+
})
11751181
require.NoError(t, err)
11761182
require.InEpsilon(t, float32(test.value), v, epsilon)
11771183
})
@@ -1183,9 +1189,11 @@ func Benchmark_GenericParseTypeFloats(b *testing.B) {
11831189
var err error
11841190
b.ReportAllocs()
11851191
b.ResetTimer()
1186-
for n := 0; n < b.N; n++ {
1187-
v, err = genericParseType[float64](test.str)
1188-
}
1192+
b.RunParallel(func(pb *testing.PB) {
1193+
for pb.Next() {
1194+
v, err = genericParseType[float64](test.str)
1195+
}
1196+
})
11891197
require.NoError(t, err)
11901198
require.InEpsilon(t, test.value, v, epsilon)
11911199
})
@@ -1223,9 +1231,12 @@ func Benchmark_GenericParseTypeBytes(b *testing.B) {
12231231
var v []byte
12241232
var err error
12251233
b.ReportAllocs()
1226-
for b.Loop() {
1227-
v, err = genericParseType[[]byte](test.str)
1228-
}
1234+
b.ResetTimer()
1235+
b.RunParallel(func(pb *testing.PB) {
1236+
for pb.Next() {
1237+
v, err = genericParseType[[]byte](test.str)
1238+
}
1239+
})
12291240
if test.err == nil {
12301241
require.NoError(b, err)
12311242
} else {
@@ -1245,9 +1256,12 @@ func Benchmark_GenericParseTypeString(b *testing.B) {
12451256
var v string
12461257
var err error
12471258
b.ReportAllocs()
1248-
for b.Loop() {
1249-
v, err = genericParseType[string](test)
1250-
}
1259+
b.ResetTimer()
1260+
b.RunParallel(func(pb *testing.PB) {
1261+
for pb.Next() {
1262+
v, err = genericParseType[string](test)
1263+
}
1264+
})
12511265
require.NoError(b, err)
12521266
require.Equal(b, test, v)
12531267
})
@@ -1283,9 +1297,12 @@ func Benchmark_GenericParseTypeBoolean(b *testing.B) {
12831297
var v bool
12841298
var err error
12851299
b.ReportAllocs()
1286-
for b.Loop() {
1287-
v, err = genericParseType[bool](test.str)
1288-
}
1300+
b.ResetTimer()
1301+
b.RunParallel(func(pb *testing.PB) {
1302+
for pb.Next() {
1303+
v, err = genericParseType[bool](test.str)
1304+
}
1305+
})
12891306
require.NoError(b, err)
12901307
if test.value {
12911308
require.True(b, v)

0 commit comments

Comments
 (0)