commit | 3c31e7caabeacb37ab0987a073ac7abac84cf1c1 | [log] [tgz] |
---|---|---|
author | Marc-Antoine Ruel <maruel@chromium.org> | Sun Jul 16 21:23:30 2017 |
committer | Marc-Antoine Ruel <maruel@chromium.org> | Sun Jul 16 21:23:30 2017 |
tree | 96d9aea2deb1695d73d4adbaf38854661961dcbc | |
parent | a9c9f15ccfa6f8b90182a53df32f4745586fbae3 [diff] |
Add Helper()
Collection of small functions to shorten Go test cases.
Requires Go 1.2 due to the use of testing.TB
. If needed, replace with *testing.T
at the cost of not being usable in benchmarks.
package foo import ( "github.com/maruel/ut" "log" "strconv" "testing" ) func TestItoa(t *testing.T) { ut.AssertEqual(t, "42", strconv.Itoa(42)) } func TestItoaDataListDriven(t *testing.T) { data := []struct { in int expected string }{ {9, "9"}, {11, "11"}, } for i, item := range data { ut.AssertEqualIndex(t, i, item.expected, strconv.Itoa(item.in)) } } func TestWithLog(t *testing.T) { out := ut.NewWriter(t) defer out.Close() logger := log.New(out, "Foo:", 0) // These will be included in the test output only if the test case fails. logger.Printf("Q: What is the answer to life the universe and everything?") logger.Printf("A: %d", 42) }