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:
Marko
2020-07-14 11:04:41 +00:00
committed by GitHub
parent 0825d57cf7
commit 6ccccb0933
32 changed files with 773 additions and 229 deletions
+5 -2
View File
@@ -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)
+14 -5
View File
@@ -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)
}
}
}
+56 -27
View File
@@ -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")