...
Run Format

Source file test/bench/go1/fmt_test.go

Documentation: test/bench/go1

  // Copyright 2013 The Go Authors. All rights reserved.
  // Use of this source code is governed by a BSD-style
  // license that can be found in the LICENSE file.
  
  package go1
  
  // benchmark based on fmt/fmt_test.go
  
  import (
  	"bytes"
  	"fmt"
  	"testing"
  )
  
  func BenchmarkFmtFprintfEmpty(b *testing.B) {
  	var buf bytes.Buffer
  	for i := 0; i < b.N; i++ {
  		fmt.Fprintf(&buf, "")
  	}
  }
  
  func BenchmarkFmtFprintfString(b *testing.B) {
  	var buf bytes.Buffer
  	for i := 0; i < b.N; i++ {
  		buf.Reset()
  		fmt.Fprintf(&buf, "%s", "hello")
  	}
  }
  
  func BenchmarkFmtFprintfInt(b *testing.B) {
  	var buf bytes.Buffer
  	for i := 0; i < b.N; i++ {
  		buf.Reset()
  		fmt.Fprintf(&buf, "%d", 5)
  	}
  }
  
  func BenchmarkFmtFprintfIntInt(b *testing.B) {
  	var buf bytes.Buffer
  	for i := 0; i < b.N; i++ {
  		buf.Reset()
  		fmt.Fprintf(&buf, "%d %d", 5, 6)
  	}
  }
  
  func BenchmarkFmtFprintfPrefixedInt(b *testing.B) {
  	var buf bytes.Buffer
  	for i := 0; i < b.N; i++ {
  		buf.Reset()
  		fmt.Fprintf(&buf, "This is some meaningless prefix text that needs to be scanned %d", 6)
  	}
  }
  
  func BenchmarkFmtFprintfFloat(b *testing.B) {
  	var buf bytes.Buffer
  	for i := 0; i < b.N; i++ {
  		buf.Reset()
  		fmt.Fprintf(&buf, "%g", 5.23184)
  	}
  }
  
  func BenchmarkFmtManyArgs(b *testing.B) {
  	var buf bytes.Buffer
  	for i := 0; i < b.N; i++ {
  		buf.Reset()
  		fmt.Fprintf(&buf, "%2d/%2d/%2d %d:%d:%d %s %s\n", 3, 4, 5, 11, 12, 13, "hello", "world")
  	}
  }
  

View as plain text