Index: filter/count/count_test.go |
diff --git a/filter/count/count_test.go b/filter/count/count_test.go |
index 21ca21fdca4fffe61b50dcd7aa9f930e07d3ad81..785264c7f1c061f6d53baf2a23790550e531ecb4 100644 |
--- a/filter/count/count_test.go |
+++ b/filter/count/count_test.go |
@@ -18,6 +18,22 @@ import ( |
"golang.org/x/net/context" |
) |
+func shouldHaveSuccessesAndErrors(actual interface{}, expected ...interface{}) string { |
+ a := actual.(Entry) |
+ if len(expected) != 2 { |
+ panic("Invalid number of expected, should be 2 (successes, errors).") |
+ } |
+ s, e := expected[0].(int), expected[1].(int) |
+ |
+ if val := a.Successes(); val != s { |
+ return fmt.Sprintf("Actual successes (%d) don't match expected (%d)", val, s) |
+ } |
+ if val := a.Errors(); val != e { |
+ return fmt.Sprintf("Actual errors (%d) don't match expected (%d)", val, e) |
+ } |
+ return "" |
+} |
+ |
func TestCount(t *testing.T) { |
t.Parallel() |
@@ -36,12 +52,12 @@ func TestCount(t *testing.T) { |
Convey("Calling a ds function should reflect in counter", func() { |
So(ds.PutMulti(vals), ShouldBeNil) |
- So(ctr.NewKey.Successes, ShouldEqual, 1) |
- So(ctr.PutMulti.Successes, ShouldEqual, 1) |
+ So(ctr.NewKey.Successes(), ShouldEqual, 1) |
+ So(ctr.PutMulti.Successes(), ShouldEqual, 1) |
Convey("effects are cumulative", func() { |
So(ds.PutMulti(vals), ShouldBeNil) |
- So(ctr.PutMulti.Successes, ShouldEqual, 2) |
+ So(ctr.PutMulti.Successes(), ShouldEqual, 2) |
Convey("even within transactions", func() { |
ds.RunInTransaction(func(c context.Context) error { |
@@ -57,15 +73,15 @@ func TestCount(t *testing.T) { |
fb.BreakFeatures(nil, "GetMulti") |
ds.GetMulti(vals) |
- So(ctr.GetMulti.Errors, ShouldEqual, 1) |
+ So(ctr.GetMulti.Errors(), ShouldEqual, 1) |
fb.UnbreakFeatures("GetMulti") |
So(ds.PutMulti(vals), ShouldBeNil) |
ds.GetMulti(vals) |
- So(ctr.GetMulti.Errors, ShouldEqual, 1) |
- So(ctr.GetMulti.Successes, ShouldEqual, 1) |
+ So(ctr.GetMulti.Errors(), ShouldEqual, 1) |
+ So(ctr.GetMulti.Successes(), ShouldEqual, 1) |
So(ctr.GetMulti.Total(), ShouldEqual, 2) |
}) |
}) |
@@ -80,9 +96,9 @@ func TestCount(t *testing.T) { |
So(mc.Get(mc.NewItem("Wat")), ShouldNotBeNil) |
mc.Get(mc.NewItem("hello")) |
- So(ctr.SetMulti, ShouldResemble, Entry{1, 0}) |
- So(ctr.GetMulti, ShouldResemble, Entry{2, 0}) |
- So(ctr.NewItem, ShouldResemble, Entry{3, 0}) |
+ So(ctr.SetMulti, shouldHaveSuccessesAndErrors, 1, 0) |
+ So(ctr.GetMulti, shouldHaveSuccessesAndErrors, 2, 0) |
+ So(ctr.NewItem, shouldHaveSuccessesAndErrors, 3, 0) |
}) |
Convey("works for taskqueue", t, func() { |
@@ -94,7 +110,7 @@ func TestCount(t *testing.T) { |
tq.Add(&taskqueue.Task{Name: "wat"}, "") |
tq.Add(&taskqueue.Task{Name: "wat"}, "DNE_QUEUE") |
- So(ctr.AddMulti, ShouldResemble, Entry{1, 1}) |
+ So(ctr.AddMulti, shouldHaveSuccessesAndErrors, 1, 1) |
}) |
Convey("works for global info", t, func() { |
@@ -109,7 +125,7 @@ func TestCount(t *testing.T) { |
fb.BreakFeatures(nil, "Namespace") |
gi.Namespace("boom") |
- So(ctr.Namespace, ShouldResemble, Entry{1, 1}) |
+ So(ctr.Namespace, shouldHaveSuccessesAndErrors, 1, 1) |
}) |
} |
@@ -138,9 +154,9 @@ func ExampleFilterRDS() { |
someCalledFunc(c) |
// Then we can see what happened! |
- fmt.Printf("%#v\n", counter.NewKey) |
- fmt.Printf("%d\n", counter.PutMulti.Successes) |
+ fmt.Printf("%s\n", counter.NewKey.String()) |
+ fmt.Printf("%d\n", counter.PutMulti.Successes()) |
// Output: |
- // count.Entry{Successes:2, Errors:0} |
+ // {Successes:2, Errors:0} |
// 2 |
} |