mirror of
https://github.com/tendermint/tendermint.git
synced 2026-01-03 11:45:18 +00:00
lint: errcheck (#5091)
## Description add more error checks to tests gonna do a third PR that tackles the non test cases
This commit is contained in:
@@ -22,7 +22,9 @@ func TestSIGHUP(t *testing.T) {
|
||||
// First, create a temporary directory and move into it
|
||||
dir, err := ioutil.TempDir("", "sighup_test")
|
||||
require.NoError(t, err)
|
||||
defer os.RemoveAll(dir)
|
||||
t.Cleanup(func() {
|
||||
os.RemoveAll(dir)
|
||||
})
|
||||
err = os.Chdir(dir)
|
||||
require.NoError(t, err)
|
||||
|
||||
@@ -50,7 +52,8 @@ func TestSIGHUP(t *testing.T) {
|
||||
require.NoError(t, err)
|
||||
|
||||
// Send SIGHUP to self.
|
||||
syscall.Kill(syscall.Getpid(), syscall.SIGHUP)
|
||||
err = syscall.Kill(syscall.Getpid(), syscall.SIGHUP)
|
||||
require.NoError(t, err)
|
||||
|
||||
// Wait a bit... signals are not handled synchronously.
|
||||
time.Sleep(time.Millisecond * 10)
|
||||
|
||||
@@ -59,8 +59,7 @@ func main() {
|
||||
os.Exit(1)
|
||||
}
|
||||
|
||||
err = group.Start()
|
||||
if err != nil {
|
||||
if err = group.Start(); err != nil {
|
||||
fmt.Printf("logjack couldn't start with file %v\n", headPath)
|
||||
os.Exit(1)
|
||||
}
|
||||
@@ -69,10 +68,11 @@ func main() {
|
||||
buf := make([]byte, readBufferSize)
|
||||
for {
|
||||
n, err := os.Stdin.Read(buf)
|
||||
group.Write(buf[:n])
|
||||
group.FlushAndSync()
|
||||
if err != nil {
|
||||
group.Stop()
|
||||
if err := group.Stop(); err != nil {
|
||||
fmt.Fprintf(os.Stderr, "logjack stopped with error %v\n", headPath)
|
||||
os.Exit(1)
|
||||
}
|
||||
if err == io.EOF {
|
||||
os.Exit(0)
|
||||
} else {
|
||||
@@ -80,6 +80,15 @@ func main() {
|
||||
os.Exit(1)
|
||||
}
|
||||
}
|
||||
_, err = group.Write(buf[:n])
|
||||
if err != nil {
|
||||
fmt.Fprintf(os.Stderr, "logjack failed write with error %v\n", headPath)
|
||||
os.Exit(1)
|
||||
}
|
||||
if err := group.FlushAndSync(); err != nil {
|
||||
fmt.Fprintf(os.Stderr, "logjack flushsync fail with error %v\n", headPath)
|
||||
os.Exit(1)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -53,7 +53,8 @@ func TestCheckHeadSizeLimit(t *testing.T) {
|
||||
err := g.WriteLine(tmrand.Str(999))
|
||||
require.NoError(t, err, "Error appending to head")
|
||||
}
|
||||
g.FlushAndSync()
|
||||
err := g.FlushAndSync()
|
||||
require.NoError(t, err)
|
||||
assertGroupInfo(t, g.ReadGroupInfo(), 0, 0, 999000, 999000)
|
||||
|
||||
// Even calling checkHeadSizeLimit manually won't rotate it.
|
||||
@@ -61,9 +62,10 @@ func TestCheckHeadSizeLimit(t *testing.T) {
|
||||
assertGroupInfo(t, g.ReadGroupInfo(), 0, 0, 999000, 999000)
|
||||
|
||||
// Write 1000 more bytes.
|
||||
err := g.WriteLine(tmrand.Str(999))
|
||||
err = g.WriteLine(tmrand.Str(999))
|
||||
require.NoError(t, err, "Error appending to head")
|
||||
g.FlushAndSync()
|
||||
err = g.FlushAndSync()
|
||||
require.NoError(t, err)
|
||||
|
||||
// Calling checkHeadSizeLimit this time rolls it.
|
||||
g.checkHeadSizeLimit()
|
||||
@@ -72,7 +74,8 @@ func TestCheckHeadSizeLimit(t *testing.T) {
|
||||
// Write 1000 more bytes.
|
||||
err = g.WriteLine(tmrand.Str(999))
|
||||
require.NoError(t, err, "Error appending to head")
|
||||
g.FlushAndSync()
|
||||
err = g.FlushAndSync()
|
||||
require.NoError(t, err)
|
||||
|
||||
// Calling checkHeadSizeLimit does nothing.
|
||||
g.checkHeadSizeLimit()
|
||||
@@ -83,7 +86,8 @@ func TestCheckHeadSizeLimit(t *testing.T) {
|
||||
err = g.WriteLine(tmrand.Str(999))
|
||||
require.NoError(t, err, "Error appending to head")
|
||||
}
|
||||
g.FlushAndSync()
|
||||
err = g.FlushAndSync()
|
||||
require.NoError(t, err)
|
||||
assertGroupInfo(t, g.ReadGroupInfo(), 0, 1, 2000000, 1000000)
|
||||
|
||||
// Calling checkHeadSizeLimit rolls it again.
|
||||
@@ -93,7 +97,8 @@ func TestCheckHeadSizeLimit(t *testing.T) {
|
||||
// Write 1000 more bytes.
|
||||
_, err = g.Head.Write([]byte(tmrand.Str(999) + "\n"))
|
||||
require.NoError(t, err, "Error appending to head")
|
||||
g.FlushAndSync()
|
||||
err = g.FlushAndSync()
|
||||
require.NoError(t, err)
|
||||
assertGroupInfo(t, g.ReadGroupInfo(), 0, 2, 2001000, 1000)
|
||||
|
||||
// Calling checkHeadSizeLimit does nothing.
|
||||
@@ -111,7 +116,11 @@ func TestRotateFile(t *testing.T) {
|
||||
// relative paths are resolved at Group creation
|
||||
origDir, err := os.Getwd()
|
||||
require.NoError(t, err)
|
||||
defer os.Chdir(origDir)
|
||||
defer func() {
|
||||
if err := os.Chdir(origDir); err != nil {
|
||||
t.Error(err)
|
||||
}
|
||||
}()
|
||||
|
||||
dir, err := ioutil.TempDir("", "rotate_test")
|
||||
require.NoError(t, err)
|
||||
@@ -123,15 +132,23 @@ func TestRotateFile(t *testing.T) {
|
||||
require.True(t, filepath.IsAbs(g.Dir))
|
||||
|
||||
// Create and rotate files
|
||||
g.WriteLine("Line 1")
|
||||
g.WriteLine("Line 2")
|
||||
g.WriteLine("Line 3")
|
||||
g.FlushAndSync()
|
||||
err = g.WriteLine("Line 1")
|
||||
require.NoError(t, err)
|
||||
err = g.WriteLine("Line 2")
|
||||
require.NoError(t, err)
|
||||
err = g.WriteLine("Line 3")
|
||||
require.NoError(t, err)
|
||||
err = g.FlushAndSync()
|
||||
require.NoError(t, err)
|
||||
g.RotateFile()
|
||||
g.WriteLine("Line 4")
|
||||
g.WriteLine("Line 5")
|
||||
g.WriteLine("Line 6")
|
||||
g.FlushAndSync()
|
||||
err = g.WriteLine("Line 4")
|
||||
require.NoError(t, err)
|
||||
err = g.WriteLine("Line 5")
|
||||
require.NoError(t, err)
|
||||
err = g.WriteLine("Line 6")
|
||||
require.NoError(t, err)
|
||||
err = g.FlushAndSync()
|
||||
require.NoError(t, err)
|
||||
|
||||
// Read g.Head.Path+"000"
|
||||
body1, err := ioutil.ReadFile(g.Head.Path + ".000")
|
||||
@@ -160,8 +177,10 @@ func TestWrite(t *testing.T) {
|
||||
g := createTestGroupWithHeadSizeLimit(t, 0)
|
||||
|
||||
written := []byte("Medusa")
|
||||
g.Write(written)
|
||||
g.FlushAndSync()
|
||||
_, err := g.Write(written)
|
||||
require.NoError(t, err)
|
||||
err = g.FlushAndSync()
|
||||
require.NoError(t, err)
|
||||
|
||||
read := make([]byte, len(written))
|
||||
gr, err := g.NewReader(0)
|
||||
@@ -181,12 +200,16 @@ func TestGroupReaderRead(t *testing.T) {
|
||||
g := createTestGroupWithHeadSizeLimit(t, 0)
|
||||
|
||||
professor := []byte("Professor Monster")
|
||||
g.Write(professor)
|
||||
g.FlushAndSync()
|
||||
_, err := g.Write(professor)
|
||||
require.NoError(t, err)
|
||||
err = g.FlushAndSync()
|
||||
require.NoError(t, err)
|
||||
g.RotateFile()
|
||||
frankenstein := []byte("Frankenstein's Monster")
|
||||
g.Write(frankenstein)
|
||||
g.FlushAndSync()
|
||||
_, err = g.Write(frankenstein)
|
||||
require.NoError(t, err)
|
||||
err = g.FlushAndSync()
|
||||
require.NoError(t, err)
|
||||
|
||||
totalWrittenLength := len(professor) + len(frankenstein)
|
||||
read := make([]byte, totalWrittenLength)
|
||||
@@ -210,13 +233,17 @@ func TestGroupReaderRead2(t *testing.T) {
|
||||
g := createTestGroupWithHeadSizeLimit(t, 0)
|
||||
|
||||
professor := []byte("Professor Monster")
|
||||
g.Write(professor)
|
||||
g.FlushAndSync()
|
||||
_, err := g.Write(professor)
|
||||
require.NoError(t, err)
|
||||
err = g.FlushAndSync()
|
||||
require.NoError(t, err)
|
||||
g.RotateFile()
|
||||
frankenstein := []byte("Frankenstein's Monster")
|
||||
frankensteinPart := []byte("Frankenstein")
|
||||
g.Write(frankensteinPart) // note writing only a part
|
||||
g.FlushAndSync()
|
||||
_, err = g.Write(frankensteinPart) // note writing only a part
|
||||
require.NoError(t, err)
|
||||
err = g.FlushAndSync()
|
||||
require.NoError(t, err)
|
||||
|
||||
totalLength := len(professor) + len(frankenstein)
|
||||
read := make([]byte, totalLength)
|
||||
@@ -251,8 +278,10 @@ func TestMaxIndex(t *testing.T) {
|
||||
|
||||
assert.Zero(t, g.MaxIndex(), "MaxIndex should be zero at the beginning")
|
||||
|
||||
g.WriteLine("Line 1")
|
||||
g.FlushAndSync()
|
||||
err := g.WriteLine("Line 1")
|
||||
require.NoError(t, err)
|
||||
err = g.FlushAndSync()
|
||||
require.NoError(t, err)
|
||||
g.RotateFile()
|
||||
|
||||
assert.Equal(t, 1, g.MaxIndex(), "MaxIndex should point to the last file")
|
||||
|
||||
@@ -17,7 +17,11 @@ func TestAddListenerForEventFireOnce(t *testing.T) {
|
||||
evsw := NewEventSwitch()
|
||||
err := evsw.Start()
|
||||
require.NoError(t, err)
|
||||
defer evsw.Stop() //nolint:errcheck // ignore for tests
|
||||
t.Cleanup(func() {
|
||||
if err := evsw.Stop(); err != nil {
|
||||
t.Error(err)
|
||||
}
|
||||
})
|
||||
|
||||
messages := make(chan EventData)
|
||||
err = evsw.AddListenerForEvent("listener", "event",
|
||||
@@ -40,7 +44,11 @@ func TestAddListenerForEventFireMany(t *testing.T) {
|
||||
evsw := NewEventSwitch()
|
||||
err := evsw.Start()
|
||||
require.NoError(t, err)
|
||||
defer evsw.Stop() //nolint:errcheck // ignore for tests
|
||||
t.Cleanup(func() {
|
||||
if err := evsw.Stop(); err != nil {
|
||||
t.Error(err)
|
||||
}
|
||||
})
|
||||
|
||||
doneSum := make(chan uint64)
|
||||
doneSending := make(chan uint64)
|
||||
@@ -70,7 +78,11 @@ func TestAddListenerForDifferentEvents(t *testing.T) {
|
||||
evsw := NewEventSwitch()
|
||||
err := evsw.Start()
|
||||
require.NoError(t, err)
|
||||
defer evsw.Stop() //nolint:errcheck // ignore for tests
|
||||
t.Cleanup(func() {
|
||||
if err := evsw.Stop(); err != nil {
|
||||
t.Error(err)
|
||||
}
|
||||
})
|
||||
|
||||
doneSum := make(chan uint64)
|
||||
doneSending1 := make(chan uint64)
|
||||
@@ -118,7 +130,12 @@ func TestAddDifferentListenerForDifferentEvents(t *testing.T) {
|
||||
evsw := NewEventSwitch()
|
||||
err := evsw.Start()
|
||||
require.NoError(t, err)
|
||||
defer evsw.Stop() //nolint:errcheck // ignore for tests
|
||||
|
||||
t.Cleanup(func() {
|
||||
if err := evsw.Stop(); err != nil {
|
||||
t.Error(err)
|
||||
}
|
||||
})
|
||||
|
||||
doneSum1 := make(chan uint64)
|
||||
doneSum2 := make(chan uint64)
|
||||
@@ -185,7 +202,11 @@ func TestAddAndRemoveListenerConcurrency(t *testing.T) {
|
||||
evsw := NewEventSwitch()
|
||||
err := evsw.Start()
|
||||
require.NoError(t, err)
|
||||
defer evsw.Stop() //nolint:errcheck // ignore for tests
|
||||
t.Cleanup(func() {
|
||||
if err := evsw.Stop(); err != nil {
|
||||
t.Error(err)
|
||||
}
|
||||
})
|
||||
|
||||
done1 := make(chan struct{})
|
||||
done2 := make(chan struct{})
|
||||
@@ -231,7 +252,11 @@ func TestAddAndRemoveListener(t *testing.T) {
|
||||
evsw := NewEventSwitch()
|
||||
err := evsw.Start()
|
||||
require.NoError(t, err)
|
||||
defer evsw.Stop() //nolint:errcheck // ignore for tests
|
||||
t.Cleanup(func() {
|
||||
if err := evsw.Stop(); err != nil {
|
||||
t.Error(err)
|
||||
}
|
||||
})
|
||||
|
||||
doneSum1 := make(chan uint64)
|
||||
doneSum2 := make(chan uint64)
|
||||
@@ -278,7 +303,11 @@ func TestRemoveListener(t *testing.T) {
|
||||
evsw := NewEventSwitch()
|
||||
err := evsw.Start()
|
||||
require.NoError(t, err)
|
||||
defer evsw.Stop() //nolint:errcheck // ignore for tests
|
||||
t.Cleanup(func() {
|
||||
if err := evsw.Stop(); err != nil {
|
||||
t.Error(err)
|
||||
}
|
||||
})
|
||||
|
||||
count := 10
|
||||
sum1, sum2 := 0, 0
|
||||
@@ -335,7 +364,11 @@ func TestRemoveListenersAsync(t *testing.T) {
|
||||
evsw := NewEventSwitch()
|
||||
err := evsw.Start()
|
||||
require.NoError(t, err)
|
||||
defer evsw.Stop() //nolint:errcheck // ignore for tests
|
||||
t.Cleanup(func() {
|
||||
if err := evsw.Stop(); err != nil {
|
||||
t.Error(err)
|
||||
}
|
||||
})
|
||||
|
||||
doneSum1 := make(chan uint64)
|
||||
doneSum2 := make(chan uint64)
|
||||
|
||||
@@ -15,8 +15,13 @@ import (
|
||||
func TestExample(t *testing.T) {
|
||||
s := pubsub.NewServer()
|
||||
s.SetLogger(log.TestingLogger())
|
||||
s.Start()
|
||||
defer s.Stop()
|
||||
err := s.Start()
|
||||
require.NoError(t, err)
|
||||
t.Cleanup(func() {
|
||||
if err := s.Stop(); err != nil {
|
||||
t.Error(err)
|
||||
}
|
||||
})
|
||||
|
||||
ctx := context.Background()
|
||||
subscription, err := s.Subscribe(ctx, "example-client", query.MustParse("abci.account.name='John'"))
|
||||
|
||||
@@ -25,7 +25,11 @@ func TestSubscribe(t *testing.T) {
|
||||
s.SetLogger(log.TestingLogger())
|
||||
err := s.Start()
|
||||
require.NoError(t, err)
|
||||
defer s.Stop() //nolint:errcheck // ignore for tests
|
||||
t.Cleanup(func() {
|
||||
if err := s.Stop(); err != nil {
|
||||
t.Error(err)
|
||||
}
|
||||
})
|
||||
|
||||
ctx := context.Background()
|
||||
subscription, err := s.Subscribe(ctx, clientID, query.Empty{})
|
||||
@@ -66,7 +70,11 @@ func TestSubscribeWithCapacity(t *testing.T) {
|
||||
s.SetLogger(log.TestingLogger())
|
||||
err := s.Start()
|
||||
require.NoError(t, err)
|
||||
defer s.Stop() //nolint:errcheck // ignore for tests
|
||||
t.Cleanup(func() {
|
||||
if err := s.Stop(); err != nil {
|
||||
t.Error(err)
|
||||
}
|
||||
})
|
||||
|
||||
ctx := context.Background()
|
||||
assert.Panics(t, func() {
|
||||
@@ -89,7 +97,11 @@ func TestSubscribeUnbuffered(t *testing.T) {
|
||||
s.SetLogger(log.TestingLogger())
|
||||
err := s.Start()
|
||||
require.NoError(t, err)
|
||||
defer s.Stop() //nolint:errcheck // ignore for tests
|
||||
t.Cleanup(func() {
|
||||
if err := s.Stop(); err != nil {
|
||||
t.Error(err)
|
||||
}
|
||||
})
|
||||
|
||||
ctx := context.Background()
|
||||
subscription, err := s.SubscribeUnbuffered(ctx, clientID, query.Empty{})
|
||||
@@ -120,7 +132,11 @@ func TestSlowClientIsRemovedWithErrOutOfCapacity(t *testing.T) {
|
||||
s.SetLogger(log.TestingLogger())
|
||||
err := s.Start()
|
||||
require.NoError(t, err)
|
||||
defer s.Stop() //nolint:errcheck // ignore for tests
|
||||
t.Cleanup(func() {
|
||||
if err := s.Stop(); err != nil {
|
||||
t.Error(err)
|
||||
}
|
||||
})
|
||||
|
||||
ctx := context.Background()
|
||||
subscription, err := s.Subscribe(ctx, clientID, query.Empty{})
|
||||
@@ -138,7 +154,11 @@ func TestDifferentClients(t *testing.T) {
|
||||
s.SetLogger(log.TestingLogger())
|
||||
err := s.Start()
|
||||
require.NoError(t, err)
|
||||
defer s.Stop() //nolint:errcheck // ignore for tests
|
||||
t.Cleanup(func() {
|
||||
if err := s.Stop(); err != nil {
|
||||
t.Error(err)
|
||||
}
|
||||
})
|
||||
|
||||
ctx := context.Background()
|
||||
subscription1, err := s.Subscribe(ctx, "client-1", query.MustParse("tm.events.type='NewBlock'"))
|
||||
@@ -178,7 +198,11 @@ func TestSubscribeDuplicateKeys(t *testing.T) {
|
||||
s := pubsub.NewServer()
|
||||
s.SetLogger(log.TestingLogger())
|
||||
require.NoError(t, s.Start())
|
||||
defer s.Stop() //nolint:errcheck // ignore for tests
|
||||
t.Cleanup(func() {
|
||||
if err := s.Stop(); err != nil {
|
||||
t.Error(err)
|
||||
}
|
||||
})
|
||||
|
||||
testCases := []struct {
|
||||
query string
|
||||
@@ -229,7 +253,11 @@ func TestClientSubscribesTwice(t *testing.T) {
|
||||
s.SetLogger(log.TestingLogger())
|
||||
err := s.Start()
|
||||
require.NoError(t, err)
|
||||
defer s.Stop() //nolint:errcheck // ignore for tests
|
||||
t.Cleanup(func() {
|
||||
if err := s.Stop(); err != nil {
|
||||
t.Error(err)
|
||||
}
|
||||
})
|
||||
|
||||
ctx := context.Background()
|
||||
q := query.MustParse("tm.events.type='NewBlock'")
|
||||
@@ -254,7 +282,11 @@ func TestUnsubscribe(t *testing.T) {
|
||||
s.SetLogger(log.TestingLogger())
|
||||
err := s.Start()
|
||||
require.NoError(t, err)
|
||||
defer s.Stop() //nolint:errcheck // ignore for tests
|
||||
t.Cleanup(func() {
|
||||
if err := s.Stop(); err != nil {
|
||||
t.Error(err)
|
||||
}
|
||||
})
|
||||
|
||||
ctx := context.Background()
|
||||
subscription, err := s.Subscribe(ctx, clientID, query.MustParse("tm.events.type='NewBlock'"))
|
||||
@@ -274,7 +306,11 @@ func TestClientUnsubscribesTwice(t *testing.T) {
|
||||
s.SetLogger(log.TestingLogger())
|
||||
err := s.Start()
|
||||
require.NoError(t, err)
|
||||
defer s.Stop() //nolint:errcheck // ignore for tests
|
||||
t.Cleanup(func() {
|
||||
if err := s.Stop(); err != nil {
|
||||
t.Error(err)
|
||||
}
|
||||
})
|
||||
|
||||
ctx := context.Background()
|
||||
_, err = s.Subscribe(ctx, clientID, query.MustParse("tm.events.type='NewBlock'"))
|
||||
@@ -293,7 +329,11 @@ func TestResubscribe(t *testing.T) {
|
||||
s.SetLogger(log.TestingLogger())
|
||||
err := s.Start()
|
||||
require.NoError(t, err)
|
||||
defer s.Stop() //nolint:errcheck // ignore for tests
|
||||
t.Cleanup(func() {
|
||||
if err := s.Stop(); err != nil {
|
||||
t.Error(err)
|
||||
}
|
||||
})
|
||||
|
||||
ctx := context.Background()
|
||||
_, err = s.Subscribe(ctx, clientID, query.Empty{})
|
||||
@@ -313,7 +353,11 @@ func TestUnsubscribeAll(t *testing.T) {
|
||||
s.SetLogger(log.TestingLogger())
|
||||
err := s.Start()
|
||||
require.NoError(t, err)
|
||||
defer s.Stop() //nolint:errcheck // ignore for tests
|
||||
t.Cleanup(func() {
|
||||
if err := s.Stop(); err != nil {
|
||||
t.Error(err)
|
||||
}
|
||||
})
|
||||
|
||||
ctx := context.Background()
|
||||
subscription1, err := s.Subscribe(ctx, clientID, query.MustParse("tm.events.type='NewBlock'"))
|
||||
@@ -365,7 +409,12 @@ func benchmarkNClients(n int, b *testing.B) {
|
||||
s := pubsub.NewServer()
|
||||
err := s.Start()
|
||||
require.NoError(b, err)
|
||||
defer s.Stop() //nolint:errcheck // ignore for tests
|
||||
|
||||
b.Cleanup(func() {
|
||||
if err := s.Stop(); err != nil {
|
||||
b.Error(err)
|
||||
}
|
||||
})
|
||||
|
||||
ctx := context.Background()
|
||||
for i := 0; i < n; i++ {
|
||||
@@ -405,7 +454,11 @@ func benchmarkNClientsOneQuery(n int, b *testing.B) {
|
||||
s := pubsub.NewServer()
|
||||
err := s.Start()
|
||||
require.NoError(b, err)
|
||||
defer s.Stop() //nolint:errcheck // ignore for tests
|
||||
b.Cleanup(func() {
|
||||
if err := s.Stop(); err != nil {
|
||||
b.Error(err)
|
||||
}
|
||||
})
|
||||
|
||||
ctx := context.Background()
|
||||
q := query.MustParse("abci.Account.Owner = 'Ivan' AND abci.Invoices.Number = 1")
|
||||
|
||||
Reference in New Issue
Block a user