diff options
Diffstat (limited to 'go/snowflake_bench_test.go')
| -rw-r--r-- | go/snowflake_bench_test.go | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/go/snowflake_bench_test.go b/go/snowflake_bench_test.go new file mode 100644 index 0000000..ffad399 --- /dev/null +++ b/go/snowflake_bench_test.go @@ -0,0 +1,65 @@ +package snowflake + +import "testing" + +var benchmarkSnowflake = New() + +func BenchmarkNew(b *testing.B) { + b.ReportAllocs() + for i := 0; i < b.N; i++ { + New() + } +} + +func BenchmarkSnowflake_String(b *testing.B) { + b.ReportAllocs() + for i := 0; i < b.N; i++ { + benchmarkSnowflake.String() + } +} + +func BenchmarkFromString(b *testing.B) { + s := benchmarkSnowflake.String() + b.ReportAllocs() + b.ResetTimer() + for i := 0; i < b.N; i++ { + FromString(s) + } +} + +func BenchmarkSnowflake_Hex(b *testing.B) { + b.ReportAllocs() + for i := 0; i < b.N; i++ { + benchmarkSnowflake.Hex() + } +} + +func BenchmarkFromHex(b *testing.B) { + h := benchmarkSnowflake.Hex() + b.ReportAllocs() + b.ResetTimer() + for i := 0; i < b.N; i++ { + FromHex(h) + } +} + +func BenchmarkMarshalJSON(b *testing.B) { + b.ReportAllocs() + for i := 0; i < b.N; i++ { + benchmarkSnowflake.MarshalJSON() + } +} + +func BenchmarkMarshalText(b *testing.B) { + b.ReportAllocs() + for i := 0; i < b.N; i++ { + benchmarkSnowflake.MarshalText() + } +} + +func BenchmarkValue(b *testing.B) { + b.ReportAllocs() + for i := 0; i < b.N; i++ { + benchmarkSnowflake.Value() + } +} |