From 14a1bf1d26fa552c4aebe549180221031212b19b Mon Sep 17 00:00:00 2001 From: Piotr Tabor Date: Thu, 29 Dec 2022 12:42:45 +0100 Subject: [PATCH] etcd-dump-logs: Make the tests work again. The tests are subtle as they skip if the binary is not generated in the local directory. $ go build . && go test PASS ok go.etcd.io/etcd/v3/tools/etcd-dump-logs 0.769s Signed-off-by: Piotr Tabor --- go.mod | 2 +- tools/etcd-dump-logs/etcd-dump-log_test.go | 19 ++++++++----------- .../decoder_correctoutputformat.output | 4 ++-- .../decoder_wrongoutputformat.output | 4 ++-- .../expectedoutput/listAll.output | 4 ++-- .../expectedoutput/listConfigChange.output | 2 +- .../listConfigChangeIRRCompaction.output | 2 +- .../expectedoutput/listIRRCompaction.output | 2 +- .../expectedoutput/listIRRDeleteRange.output | 2 +- .../expectedoutput/listIRRLeaseGrant.output | 2 +- .../expectedoutput/listIRRLeaseRevoke.output | 2 +- .../expectedoutput/listIRRPut.output | 2 +- .../expectedoutput/listIRRRange.output | 2 +- .../expectedoutput/listIRRTxn.output | 2 +- .../listInternalRaftRequest.output | 4 ++-- .../expectedoutput/listNormal.output | 4 ++-- .../expectedoutput/listRequest.output | 2 +- 17 files changed, 29 insertions(+), 32 deletions(-) diff --git a/go.mod b/go.mod index bdf03e6aa4c..d4d48c73c01 100644 --- a/go.mod +++ b/go.mod @@ -20,6 +20,7 @@ require ( github.com/coreos/go-semver v0.3.0 github.com/dustin/go-humanize v1.0.0 github.com/spf13/cobra v1.6.1 + github.com/stretchr/testify v1.8.1 go.etcd.io/bbolt v1.3.6 go.etcd.io/etcd/api/v3 v3.6.0-alpha.0 go.etcd.io/etcd/client/pkg/v3 v3.6.0-alpha.0 @@ -76,7 +77,6 @@ require ( github.com/sirupsen/logrus v1.8.1 // indirect github.com/soheilhy/cmux v0.1.5 // indirect github.com/spf13/pflag v1.0.5 // indirect - github.com/stretchr/testify v1.8.1 // indirect github.com/tmc/grpc-websocket-proxy v0.0.0-20201229170055-e5319fda7802 // indirect github.com/xiang90/probing v0.0.0-20190116061207-43a291ad63a2 // indirect go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.37.0 // indirect diff --git a/tools/etcd-dump-logs/etcd-dump-log_test.go b/tools/etcd-dump-logs/etcd-dump-log_test.go index bc57887a286..4fc35719742 100644 --- a/tools/etcd-dump-logs/etcd-dump-log_test.go +++ b/tools/etcd-dump-logs/etcd-dump-log_test.go @@ -15,7 +15,6 @@ package main import ( - "bytes" "os" "os/exec" "path" @@ -23,6 +22,8 @@ import ( "strings" "testing" + "github.com/stretchr/testify/assert" + "go.uber.org/zap/zaptest" "go.etcd.io/etcd/api/v3/authpb" @@ -40,6 +41,7 @@ func TestEtcdDumpLogEntryType(t *testing.T) { t.Fatal(err) } + // TODO(ptabor): The test does not run by default from ./scripts/test.sh. dumpLogsBinary := path.Join(binDir + "/etcd-dump-logs") if !fileutil.Exist(dumpLogsBinary) { t.Skipf("%q does not exist", dumpLogsBinary) @@ -116,16 +118,11 @@ func TestEtcdDumpLogEntryType(t *testing.T) { if err != nil { t.Fatal(err) } - if !bytes.Equal(actual, expected) { - t.Errorf(`Got input of length %d, wanted input of length %d -==== BEGIN RECEIVED FILE ==== -%s -==== END RECEIVED FILE ==== -==== BEGIN EXPECTED FILE ==== -%s -==== END EXPECTED FILE ==== -`, len(actual), len(expected), actual, expected) - } + + assert.EqualValues(t, string(expected), string(actual)) + // The output files contains a lot of trailing whitespaces... difficult to diagnose without printing them explicitly. + // TODO(ptabor): Get rid of the whitespaces both in code and the test-files. + assert.EqualValues(t, strings.ReplaceAll(string(expected), " ", "_"), strings.ReplaceAll(string(actual), " ", "_")) }) } diff --git a/tools/etcd-dump-logs/expectedoutput/decoder_correctoutputformat.output b/tools/etcd-dump-logs/expectedoutput/decoder_correctoutputformat.output index 1937054cad0..a9fcd1a3ac6 100644 --- a/tools/etcd-dump-logs/expectedoutput/decoder_correctoutputformat.output +++ b/tools/etcd-dump-logs/expectedoutput/decoder_correctoutputformat.output @@ -3,7 +3,7 @@ empty Start dumping log entries from snapshot. WAL metadata: nodeID=0 clusterID=0 term=0 commitIndex=0 vote=0 -WAL entries: +WAL entries: 34 lastIndex=34 term index type data decoder_status decoded_data 1 1 conf method=ConfChangeAddNode id=2 ERROR jhjaajjjahjbbbjj @@ -29,7 +29,7 @@ term index type data decoder_status decoded_data 15 21 norm ID:16 auth_user_add: > OK jhajebddajjajefefafdfecaabjegjfagcgccaaajj 16 22 norm ID:17 auth_user_delete: OK jhaaeaddjgjajefefafdfeca 17 23 norm ID:18 auth_user_get: OK jhabfbddjgjajefefafdfeca - 18 24 norm ID:19 auth_user_change_password: OK jhacfaddjejajefefafdfecaabjegjfagcgccb + 18 24 norm ID:19 auth_user_change_password:" > OK jhacfaddjejajefefafdfecaabjegjfagcgccb 19 25 norm ID:20 auth_user_grant_role: OK jhadhbdejejajegegcfegbcaabjegbfffcfeca 20 26 norm ID:21 auth_user_revoke_role: OK jhaehadejejajegegcfegbcbabjegbfffcfecb 21 27 norm ID:22 auth_user_list:<> ERROR jhafibdejj diff --git a/tools/etcd-dump-logs/expectedoutput/decoder_wrongoutputformat.output b/tools/etcd-dump-logs/expectedoutput/decoder_wrongoutputformat.output index 90341eb62c1..65e7dd3a4f9 100644 --- a/tools/etcd-dump-logs/expectedoutput/decoder_wrongoutputformat.output +++ b/tools/etcd-dump-logs/expectedoutput/decoder_wrongoutputformat.output @@ -3,7 +3,7 @@ empty Start dumping log entries from snapshot. WAL metadata: nodeID=0 clusterID=0 term=0 commitIndex=0 vote=0 -WAL entries: +WAL entries: 34 lastIndex=34 term index type data decoder_status decoded_data 1 1 conf method=ConfChangeAddNode id=2 decoder output format is not right, print output anyway jhjaajjjahjbbbjj @@ -29,7 +29,7 @@ term index type data decoder_status decoded_data 15 21 norm ID:16 auth_user_add: > decoder output format is not right, print output anyway jhajebddajjajefefafdfecaabjegjfagcgccaaajj 16 22 norm ID:17 auth_user_delete: decoder output format is not right, print output anyway jhaaeaddjgjajefefafdfeca 17 23 norm ID:18 auth_user_get: decoder output format is not right, print output anyway jhabfbddjgjajefefafdfeca - 18 24 norm ID:19 auth_user_change_password: decoder output format is not right, print output anyway jhacfaddjejajefefafdfecaabjegjfagcgccb + 18 24 norm ID:19 auth_user_change_password:" > decoder output format is not right, print output anyway jhacfaddjejajefefafdfecaabjegjfagcgccb 19 25 norm ID:20 auth_user_grant_role: decoder output format is not right, print output anyway jhadhbdejejajegegcfegbcaabjegbfffcfeca 20 26 norm ID:21 auth_user_revoke_role: decoder output format is not right, print output anyway jhaehadejejajegegcfegbcbabjegbfffcfecb 21 27 norm ID:22 auth_user_list:<> decoder output format is not right, print output anyway jhafibdejj diff --git a/tools/etcd-dump-logs/expectedoutput/listAll.output b/tools/etcd-dump-logs/expectedoutput/listAll.output index 3a6f41bb9c9..a1168ec20c2 100644 --- a/tools/etcd-dump-logs/expectedoutput/listAll.output +++ b/tools/etcd-dump-logs/expectedoutput/listAll.output @@ -3,7 +3,7 @@ empty Start dumping log entries from snapshot. WAL metadata: nodeID=0 clusterID=0 term=0 commitIndex=0 vote=0 -WAL entries: +WAL entries: 34 lastIndex=34 term index type data 1 1 conf method=ConfChangeAddNode id=2 @@ -29,7 +29,7 @@ term index type data 15 21 norm ID:16 auth_user_add: > 16 22 norm ID:17 auth_user_delete: 17 23 norm ID:18 auth_user_get: - 18 24 norm ID:19 auth_user_change_password: + 18 24 norm ID:19 auth_user_change_password:" > 19 25 norm ID:20 auth_user_grant_role: 20 26 norm ID:21 auth_user_revoke_role: 21 27 norm ID:22 auth_user_list:<> diff --git a/tools/etcd-dump-logs/expectedoutput/listConfigChange.output b/tools/etcd-dump-logs/expectedoutput/listConfigChange.output index 1b2dc9ec90f..acfb23c1535 100644 --- a/tools/etcd-dump-logs/expectedoutput/listConfigChange.output +++ b/tools/etcd-dump-logs/expectedoutput/listConfigChange.output @@ -3,7 +3,7 @@ empty Start dumping log entries from snapshot. WAL metadata: nodeID=0 clusterID=0 term=0 commitIndex=0 vote=0 -WAL entries: +WAL entries: 34 lastIndex=34 term index type data 1 1 conf method=ConfChangeAddNode id=2 diff --git a/tools/etcd-dump-logs/expectedoutput/listConfigChangeIRRCompaction.output b/tools/etcd-dump-logs/expectedoutput/listConfigChangeIRRCompaction.output index c262c2e8aac..15b34dccd9b 100644 --- a/tools/etcd-dump-logs/expectedoutput/listConfigChangeIRRCompaction.output +++ b/tools/etcd-dump-logs/expectedoutput/listConfigChangeIRRCompaction.output @@ -3,7 +3,7 @@ empty Start dumping log entries from snapshot. WAL metadata: nodeID=0 clusterID=0 term=0 commitIndex=0 vote=0 -WAL entries: +WAL entries: 34 lastIndex=34 term index type data 1 1 conf method=ConfChangeAddNode id=2 diff --git a/tools/etcd-dump-logs/expectedoutput/listIRRCompaction.output b/tools/etcd-dump-logs/expectedoutput/listIRRCompaction.output index 493545884a9..cc764466dbb 100644 --- a/tools/etcd-dump-logs/expectedoutput/listIRRCompaction.output +++ b/tools/etcd-dump-logs/expectedoutput/listIRRCompaction.output @@ -3,7 +3,7 @@ empty Start dumping log entries from snapshot. WAL metadata: nodeID=0 clusterID=0 term=0 commitIndex=0 vote=0 -WAL entries: +WAL entries: 34 lastIndex=34 term index type data 8 14 norm ID:9 compaction: diff --git a/tools/etcd-dump-logs/expectedoutput/listIRRDeleteRange.output b/tools/etcd-dump-logs/expectedoutput/listIRRDeleteRange.output index 85e71d39602..67716775300 100644 --- a/tools/etcd-dump-logs/expectedoutput/listIRRDeleteRange.output +++ b/tools/etcd-dump-logs/expectedoutput/listIRRDeleteRange.output @@ -3,7 +3,7 @@ empty Start dumping log entries from snapshot. WAL metadata: nodeID=0 clusterID=0 term=0 commitIndex=0 vote=0 -WAL entries: +WAL entries: 34 lastIndex=34 term index type data 6 12 norm ID:7 delete_range: diff --git a/tools/etcd-dump-logs/expectedoutput/listIRRLeaseGrant.output b/tools/etcd-dump-logs/expectedoutput/listIRRLeaseGrant.output index 5cba3a497a7..6f9f8ecb9a3 100644 --- a/tools/etcd-dump-logs/expectedoutput/listIRRLeaseGrant.output +++ b/tools/etcd-dump-logs/expectedoutput/listIRRLeaseGrant.output @@ -3,7 +3,7 @@ empty Start dumping log entries from snapshot. WAL metadata: nodeID=0 clusterID=0 term=0 commitIndex=0 vote=0 -WAL entries: +WAL entries: 34 lastIndex=34 term index type data 9 15 norm ID:10 lease_grant: diff --git a/tools/etcd-dump-logs/expectedoutput/listIRRLeaseRevoke.output b/tools/etcd-dump-logs/expectedoutput/listIRRLeaseRevoke.output index d67d05d0232..33fafaf3417 100644 --- a/tools/etcd-dump-logs/expectedoutput/listIRRLeaseRevoke.output +++ b/tools/etcd-dump-logs/expectedoutput/listIRRLeaseRevoke.output @@ -3,7 +3,7 @@ empty Start dumping log entries from snapshot. WAL metadata: nodeID=0 clusterID=0 term=0 commitIndex=0 vote=0 -WAL entries: +WAL entries: 34 lastIndex=34 term index type data 10 16 norm ID:11 lease_revoke: diff --git a/tools/etcd-dump-logs/expectedoutput/listIRRPut.output b/tools/etcd-dump-logs/expectedoutput/listIRRPut.output index 397ae60c7b6..672dae54c3c 100644 --- a/tools/etcd-dump-logs/expectedoutput/listIRRPut.output +++ b/tools/etcd-dump-logs/expectedoutput/listIRRPut.output @@ -3,7 +3,7 @@ empty Start dumping log entries from snapshot. WAL metadata: nodeID=0 clusterID=0 term=0 commitIndex=0 vote=0 -WAL entries: +WAL entries: 34 lastIndex=34 term index type data 5 11 norm ID:6 put: diff --git a/tools/etcd-dump-logs/expectedoutput/listIRRRange.output b/tools/etcd-dump-logs/expectedoutput/listIRRRange.output index 422e0374930..832587c91b1 100644 --- a/tools/etcd-dump-logs/expectedoutput/listIRRRange.output +++ b/tools/etcd-dump-logs/expectedoutput/listIRRRange.output @@ -3,7 +3,7 @@ empty Start dumping log entries from snapshot. WAL metadata: nodeID=0 clusterID=0 term=0 commitIndex=0 vote=0 -WAL entries: +WAL entries: 34 lastIndex=34 term index type data 4 10 norm ID:5 range: diff --git a/tools/etcd-dump-logs/expectedoutput/listIRRTxn.output b/tools/etcd-dump-logs/expectedoutput/listIRRTxn.output index 92a7d0a26e7..9c5c1183319 100644 --- a/tools/etcd-dump-logs/expectedoutput/listIRRTxn.output +++ b/tools/etcd-dump-logs/expectedoutput/listIRRTxn.output @@ -3,7 +3,7 @@ empty Start dumping log entries from snapshot. WAL metadata: nodeID=0 clusterID=0 term=0 commitIndex=0 vote=0 -WAL entries: +WAL entries: 34 lastIndex=34 term index type data 7 13 norm ID:8 txn: > failure: > > diff --git a/tools/etcd-dump-logs/expectedoutput/listInternalRaftRequest.output b/tools/etcd-dump-logs/expectedoutput/listInternalRaftRequest.output index da1ccb9a6e3..de2a0b41574 100644 --- a/tools/etcd-dump-logs/expectedoutput/listInternalRaftRequest.output +++ b/tools/etcd-dump-logs/expectedoutput/listInternalRaftRequest.output @@ -3,7 +3,7 @@ empty Start dumping log entries from snapshot. WAL metadata: nodeID=0 clusterID=0 term=0 commitIndex=0 vote=0 -WAL entries: +WAL entries: 34 lastIndex=34 term index type data 4 10 norm ID:5 range: @@ -20,7 +20,7 @@ term index type data 15 21 norm ID:16 auth_user_add: > 16 22 norm ID:17 auth_user_delete: 17 23 norm ID:18 auth_user_get: - 18 24 norm ID:19 auth_user_change_password: + 18 24 norm ID:19 auth_user_change_password:" > 19 25 norm ID:20 auth_user_grant_role: 20 26 norm ID:21 auth_user_revoke_role: 21 27 norm ID:22 auth_user_list:<> diff --git a/tools/etcd-dump-logs/expectedoutput/listNormal.output b/tools/etcd-dump-logs/expectedoutput/listNormal.output index 37a1bb80cd6..5a584c31209 100644 --- a/tools/etcd-dump-logs/expectedoutput/listNormal.output +++ b/tools/etcd-dump-logs/expectedoutput/listNormal.output @@ -3,7 +3,7 @@ empty Start dumping log entries from snapshot. WAL metadata: nodeID=0 clusterID=0 term=0 commitIndex=0 vote=0 -WAL entries: +WAL entries: 34 lastIndex=34 term index type data 3 5 norm noop @@ -25,7 +25,7 @@ term index type data 15 21 norm ID:16 auth_user_add: > 16 22 norm ID:17 auth_user_delete: 17 23 norm ID:18 auth_user_get: - 18 24 norm ID:19 auth_user_change_password: + 18 24 norm ID:19 auth_user_change_password:" > 19 25 norm ID:20 auth_user_grant_role: 20 26 norm ID:21 auth_user_revoke_role: 21 27 norm ID:22 auth_user_list:<> diff --git a/tools/etcd-dump-logs/expectedoutput/listRequest.output b/tools/etcd-dump-logs/expectedoutput/listRequest.output index 5201ff9d366..04defbdc0eb 100644 --- a/tools/etcd-dump-logs/expectedoutput/listRequest.output +++ b/tools/etcd-dump-logs/expectedoutput/listRequest.output @@ -3,7 +3,7 @@ empty Start dumping log entries from snapshot. WAL metadata: nodeID=0 clusterID=0 term=0 commitIndex=0 vote=0 -WAL entries: +WAL entries: 34 lastIndex=34 term index type data 3 5 norm noop