summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormo khan <mo.khan@gmail.com>2019-10-22 20:07:28 -0600
committermo khan <mo.khan@gmail.com>2019-10-22 20:07:28 -0600
commit5c49c8451057855b4ff7f75fa716c2953b1c3e2f (patch)
tree01e8b4f42e1920f4a46b550343e44e8ac94476f1
parent6e627fd115529c309504a7518bcea5dacddaa049 (diff)
https://github.com/quii/learn-go-with-tests/blob/master/iteration.md#benchmarking
-rwxr-xr-xbin/benchmark3
-rw-r--r--repeat.go2
-rw-r--r--repeat_test.go6
3 files changed, 10 insertions, 1 deletions
diff --git a/bin/benchmark b/bin/benchmark
new file mode 100755
index 0000000..e96fda5
--- /dev/null
+++ b/bin/benchmark
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+go test -bench=.
diff --git a/repeat.go b/repeat.go
index a873fbb..ed390f4 100644
--- a/repeat.go
+++ b/repeat.go
@@ -3,7 +3,7 @@ package main
func Repeat(character string) string {
var repeated string
for i := 0; i < 5; i++ {
- repeated = repeated + character
+ repeated += character
}
return repeated
}
diff --git a/repeat_test.go b/repeat_test.go
index 37854a6..3ac6266 100644
--- a/repeat_test.go
+++ b/repeat_test.go
@@ -10,3 +10,9 @@ func TestRepeat(t *testing.T) {
t.Errorf("expected %q but got %q", expected, repeated)
}
}
+
+func BenchmarkRepeat(b *testing.B) {
+ for i := 0; i < b.N; i++ {
+ Repeat("a")
+ }
+}