Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/gohugoio/locales.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'en/benchmarks_test.go')
-rw-r--r--en/benchmarks_test.go252
1 files changed, 252 insertions, 0 deletions
diff --git a/en/benchmarks_test.go b/en/benchmarks_test.go
new file mode 100644
index 00000000..c2ae6b0b
--- /dev/null
+++ b/en/benchmarks_test.go
@@ -0,0 +1,252 @@
+package en
+
+import (
+ "testing"
+ "time"
+
+ "github.com/go-playground/locales/currency"
+)
+
+func BenchmarkFmtNumber(b *testing.B) {
+
+ trans := New()
+ f64 := float64(1234567.43)
+ precision := uint64(2)
+
+ b.ResetTimer()
+
+ b.Run("", func(b *testing.B) {
+ for i := 0; i < b.N; i++ {
+ trans.FmtNumber(f64, precision)
+ }
+ })
+
+ b.Run("Parallel", func(b *testing.B) {
+
+ b.RunParallel(func(pb *testing.PB) {
+
+ for pb.Next() {
+ trans.FmtNumber(f64, precision)
+ }
+ })
+ })
+}
+
+func BenchmarkFmtPercent(b *testing.B) {
+
+ trans := New()
+ f64 := float64(97.05)
+ precision := uint64(2)
+
+ b.ResetTimer()
+
+ b.Run("", func(b *testing.B) {
+ for i := 0; i < b.N; i++ {
+ trans.FmtPercent(f64, precision)
+ }
+ })
+
+ b.Run("Parallel", func(b *testing.B) {
+
+ b.RunParallel(func(pb *testing.PB) {
+
+ for pb.Next() {
+ trans.FmtPercent(f64, precision)
+ }
+ })
+ })
+}
+
+func BenchmarkFmtCurrency(b *testing.B) {
+
+ trans := New()
+ f64 := float64(1234567.43)
+ precision := uint64(2)
+
+ b.ResetTimer()
+
+ b.Run("", func(b *testing.B) {
+ for i := 0; i < b.N; i++ {
+ trans.FmtCurrency(f64, precision, currency.USD)
+ }
+ })
+
+ b.Run("Parallel", func(b *testing.B) {
+
+ b.RunParallel(func(pb *testing.PB) {
+
+ for pb.Next() {
+ trans.FmtCurrency(f64, precision, currency.USD)
+ }
+ })
+ })
+}
+
+func BenchmarkFmtAccounting(b *testing.B) {
+
+ trans := New()
+ f64 := float64(1234567.43)
+ precision := uint64(2)
+
+ b.ResetTimer()
+
+ b.Run("", func(b *testing.B) {
+ for i := 0; i < b.N; i++ {
+ trans.FmtAccounting(f64, precision, currency.USD)
+ }
+ })
+
+ b.Run("Parallel", func(b *testing.B) {
+
+ b.RunParallel(func(pb *testing.PB) {
+
+ for pb.Next() {
+ trans.FmtAccounting(f64, precision, currency.USD)
+ }
+ })
+ })
+}
+
+func BenchmarkFmtDate(b *testing.B) {
+
+ trans := New()
+ t := time.Now()
+
+ b.ResetTimer()
+
+ b.Run("FmtDateShort", func(b *testing.B) {
+ for i := 0; i < b.N; i++ {
+ trans.FmtDateShort(t)
+ }
+ })
+
+ b.Run("FmtDateShortParallel", func(b *testing.B) {
+
+ b.RunParallel(func(pb *testing.PB) {
+
+ for pb.Next() {
+ trans.FmtDateShort(t)
+ }
+ })
+ })
+
+ b.Run("FmtDateMedium", func(b *testing.B) {
+ for i := 0; i < b.N; i++ {
+ trans.FmtDateMedium(t)
+ }
+ })
+
+ b.Run("FmtDateMediumParallel", func(b *testing.B) {
+
+ b.RunParallel(func(pb *testing.PB) {
+
+ for pb.Next() {
+ trans.FmtDateMedium(t)
+ }
+ })
+ })
+
+ b.Run("FmtDateLong", func(b *testing.B) {
+ for i := 0; i < b.N; i++ {
+ trans.FmtDateLong(t)
+ }
+ })
+
+ b.Run("FmtDateLongParallel", func(b *testing.B) {
+
+ b.RunParallel(func(pb *testing.PB) {
+
+ for pb.Next() {
+ trans.FmtDateLong(t)
+ }
+ })
+ })
+
+ b.Run("FmtDateFull", func(b *testing.B) {
+ for i := 0; i < b.N; i++ {
+ trans.FmtDateFull(t)
+ }
+ })
+
+ b.Run("FmtDateFullParallel", func(b *testing.B) {
+
+ b.RunParallel(func(pb *testing.PB) {
+
+ for pb.Next() {
+ trans.FmtDateFull(t)
+ }
+ })
+ })
+}
+
+func BenchmarkFmtTime(b *testing.B) {
+
+ trans := New()
+ t := time.Now()
+
+ b.ResetTimer()
+
+ b.Run("FmtTimeShort", func(b *testing.B) {
+ for i := 0; i < b.N; i++ {
+ trans.FmtTimeShort(t)
+ }
+ })
+
+ b.Run("FmtTimeShortParallel", func(b *testing.B) {
+
+ b.RunParallel(func(pb *testing.PB) {
+
+ for pb.Next() {
+ trans.FmtTimeShort(t)
+ }
+ })
+ })
+
+ b.Run("FmtTimeMedium", func(b *testing.B) {
+ for i := 0; i < b.N; i++ {
+ trans.FmtTimeMedium(t)
+ }
+ })
+
+ b.Run("FmtTimeMediumParallel", func(b *testing.B) {
+
+ b.RunParallel(func(pb *testing.PB) {
+
+ for pb.Next() {
+ trans.FmtTimeMedium(t)
+ }
+ })
+ })
+
+ b.Run("FmtTimeLong", func(b *testing.B) {
+ for i := 0; i < b.N; i++ {
+ trans.FmtTimeLong(t)
+ }
+ })
+
+ b.Run("FmtTimeLongParallel", func(b *testing.B) {
+
+ b.RunParallel(func(pb *testing.PB) {
+
+ for pb.Next() {
+ trans.FmtTimeLong(t)
+ }
+ })
+ })
+
+ b.Run("FmtTimeFull", func(b *testing.B) {
+ for i := 0; i < b.N; i++ {
+ trans.FmtTimeFull(t)
+ }
+ })
+
+ b.Run("FmtTimeFullParallel", func(b *testing.B) {
+
+ b.RunParallel(func(pb *testing.PB) {
+
+ for pb.Next() {
+ trans.FmtTimeFull(t)
+ }
+ })
+ })
+}