From 41d48224aa92b5d39bf6f20688ca8209fbee79e2 Mon Sep 17 00:00:00 2001 From: Tom Wilkie Date: Sat, 23 Jan 2016 11:54:22 -0800 Subject: [PATCH] Fix tests --- app/collector_test.go | 2 +- probe/probe_internal_test.go | 2 +- report/report.go | 6 ++++-- test/reflect/deepequal.go | 3 +++ 4 files changed, 9 insertions(+), 4 deletions(-) diff --git a/app/collector_test.go b/app/collector_test.go index 9e77fcb9e..672e4f433 100644 --- a/app/collector_test.go +++ b/app/collector_test.go @@ -1,13 +1,13 @@ package app_test import ( - "reflect" "testing" "time" "github.com/weaveworks/scope/app" "github.com/weaveworks/scope/report" "github.com/weaveworks/scope/test" + "github.com/weaveworks/scope/test/reflect" ) func TestCollector(t *testing.T) { diff --git a/probe/probe_internal_test.go b/probe/probe_internal_test.go index f27e7e92c..51a6fff63 100644 --- a/probe/probe_internal_test.go +++ b/probe/probe_internal_test.go @@ -4,12 +4,12 @@ import ( "compress/gzip" "encoding/gob" "io" - "reflect" "testing" "time" "github.com/weaveworks/scope/report" "github.com/weaveworks/scope/test" + "github.com/weaveworks/scope/test/reflect" ) func TestApply(t *testing.T) { diff --git a/report/report.go b/report/report.go index aacaddbbf..e33c8e85b 100644 --- a/report/report.go +++ b/report/report.go @@ -83,8 +83,10 @@ type Report struct { Shortcut bool // ID a random identifier for this report, used when caching - // rendered views of the report - ID string + // rendered views of the report. Reports with the same id + // must be equal, but we don't require that equal reports have + // the same id. + ID string `deepequal:"skip"` } // MakeReport makes a clean report, ready to Merge() other reports into. diff --git a/test/reflect/deepequal.go b/test/reflect/deepequal.go index 12d34fefa..70857196e 100644 --- a/test/reflect/deepequal.go +++ b/test/reflect/deepequal.go @@ -105,6 +105,9 @@ func deepValueEqual(v1, v2 reflect.Value, visited map[visit]bool, depth int) boo return deepValueEqual(v1.Elem(), v2.Elem(), visited, depth+1) case reflect.Struct: for i, n := 0, v1.NumField(); i < n; i++ { + if v1.Type().Field(i).Tag.Get("deepequal") == "skip" { + continue + } if !deepValueEqual(v1.Field(i), v2.Field(i), visited, depth+1) { return false }