From 5bf8e260ca2c786abcb749ce46a6233d3e292b2b Mon Sep 17 00:00:00 2001 From: Paul Tong Date: Thu, 6 Jan 2022 01:39:43 +0000 Subject: [PATCH] Fix missing dimensions --- publish.go | 2 +- publish_test.go | 16 ++++++++++++---- 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/publish.go b/publish.go index 14290fa..a77b9d1 100644 --- a/publish.go +++ b/publish.go @@ -281,7 +281,7 @@ func Dimensions(keyvals ...string) func(*Publisher) { return } - for i := 0; i < len(keyvals)/2; i = i + 2 { + for i := 0; i < len(keyvals); i = i + 2 { p.dimensions = append(p.dimensions, &cloudwatch.Dimension{ Name: aws.String(keyvals[i]), Value: aws.String(keyvals[i+1]), diff --git a/publish_test.go b/publish_test.go index be7f89f..e8cb725 100644 --- a/publish_test.go +++ b/publish_test.go @@ -273,11 +273,11 @@ func TestPollOnceDimensions(t *testing.T) { registry.Register("blah", c) c.Inc(1) - publisher := newPublisher(registry, "blah", debug, Dimensions("foo", "bar")) + publisher := newPublisher(registry, "blah", debug, Dimensions("foo", "bar", "baz", "qux")) data := publisher.pollOnce() - if v := len(data[0].Dimensions); v != 1 { - t.Errorf("expected 1 event to be published; got %v", v) + if v := len(data[0].Dimensions); v != 2 { + t.Errorf("expected 2 event dimensions; got %v", v) } d := data[0].Dimensions[0] @@ -285,7 +285,15 @@ func TestPollOnceDimensions(t *testing.T) { t.Errorf("expected dimension name foo; got %v", v) } if v := *d.Value; v != "bar" { - t.Errorf("expected dimension name foo; got %v", v) + t.Errorf("expected dimension value bar; got %v", v) + } + + d = data[0].Dimensions[1] + if v := *d.Name; v != "baz" { + t.Errorf("expected dimension name baz; got %v", v) + } + if v := *d.Value; v != "qux" { + t.Errorf("expected dimension value qux; got %v", v) } }