You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@arrow.apache.org by ze...@apache.org on 2022/08/08 16:43:58 UTC

[arrow] branch master updated: ARROW-17340: [Go] Use `T.TempDir` to create temporary test directory (#13816)

This is an automated email from the ASF dual-hosted git repository.

zeroshade pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/arrow.git


The following commit(s) were added to refs/heads/master by this push:
     new b1d36c026d ARROW-17340: [Go] Use `T.TempDir` to create temporary test directory (#13816)
b1d36c026d is described below

commit b1d36c026df7838669742800591b5c4454af9a81
Author: Eng Zer Jun <en...@gmail.com>
AuthorDate: Tue Aug 9 00:43:52 2022 +0800

    ARROW-17340: [Go] Use `T.TempDir` to create temporary test directory (#13816)
    
    A testing cleanup.
    
    This pull request replaces `ioutil.TempDir` with `t.TempDir`. We can use the `T.TempDir` function from the `testing` package to create temporary directory. The directory created by `T.TempDir` is automatically removed when the test and all its subtests complete.
    
    This saves us at least 2 lines (error check, and cleanup) on every instance, or in some cases adds cleanup that we forgot.
    
    Reference: https://pkg.go.dev/testing#T.TempDir
    
    ```go
    func TestFoo(t *testing.T) {
            // before
            tmpDir, err := ioutil.TempDir("", "")
            if err != nil {
                    t.Fatal(err)
            }
            defer os.RemoveAll(tmpDir)
    
            // now
            tmpDir := t.TempDir()
    }
    ```
    
    Authored-by: Eng Zer Jun <en...@gmail.com>
    Signed-off-by: Matt Topol <zo...@gmail.com>
---
 go/arrow/arrio/arrio_test.go                              |  6 +-----
 go/arrow/internal/arrjson/arrjson_test.go                 |  7 +------
 go/arrow/ipc/cmd/arrow-cat/main_test.go                   | 12 ++----------
 go/arrow/ipc/cmd/arrow-file-to-stream/main_test.go        |  7 +------
 go/arrow/ipc/cmd/arrow-json-integration-test/main_test.go |  6 +-----
 go/arrow/ipc/cmd/arrow-ls/main_test.go                    | 12 ++----------
 go/arrow/ipc/cmd/arrow-stream-to-file/main_test.go        |  8 ++------
 go/arrow/ipc/file_test.go                                 | 13 ++-----------
 go/arrow/ipc/stream_test.go                               | 13 ++-----------
 9 files changed, 14 insertions(+), 70 deletions(-)

diff --git a/go/arrow/arrio/arrio_test.go b/go/arrow/arrio/arrio_test.go
index 026b789a51..57c75fcf0a 100644
--- a/go/arrow/arrio/arrio_test.go
+++ b/go/arrow/arrio/arrio_test.go
@@ -64,11 +64,7 @@ func (k copyKind) check(t *testing.T, f *os.File, mem memory.Allocator, schema *
 }
 
 func TestCopy(t *testing.T) {
-	tempDir, err := ioutil.TempDir("", "go-arrow-copy-")
-	if err != nil {
-		t.Fatal(err)
-	}
-	defer os.RemoveAll(tempDir)
+	tempDir := t.TempDir()
 
 	for _, tc := range []struct {
 		name     string
diff --git a/go/arrow/internal/arrjson/arrjson_test.go b/go/arrow/internal/arrjson/arrjson_test.go
index c4ffc3bbbf..688b181907 100644
--- a/go/arrow/internal/arrjson/arrjson_test.go
+++ b/go/arrow/internal/arrjson/arrjson_test.go
@@ -20,7 +20,6 @@ import (
 	"errors"
 	"io"
 	"io/ioutil"
-	"os"
 	"testing"
 
 	"github.com/apache/arrow/go/v10/arrow/array"
@@ -46,11 +45,7 @@ func TestReadWrite(t *testing.T) {
 	wantJSONs["extension"] = makeExtensionsWantJSONs()
 	wantJSONs["dictionary"] = makeDictionaryWantJSONs()
 
-	tempDir, err := ioutil.TempDir("", "go-arrow-read-write-")
-	if err != nil {
-		t.Fatal(err)
-	}
-	defer os.RemoveAll(tempDir)
+	tempDir := t.TempDir()
 
 	for name, recs := range arrdata.Records {
 		t.Run(name, func(t *testing.T) {
diff --git a/go/arrow/ipc/cmd/arrow-cat/main_test.go b/go/arrow/ipc/cmd/arrow-cat/main_test.go
index c289e3f3ac..e9cc59c5dc 100644
--- a/go/arrow/ipc/cmd/arrow-cat/main_test.go
+++ b/go/arrow/ipc/cmd/arrow-cat/main_test.go
@@ -31,11 +31,7 @@ import (
 )
 
 func TestCatStream(t *testing.T) {
-	tempDir, err := ioutil.TempDir("", "go-arrow-cat-stream-")
-	if err != nil {
-		t.Fatal(err)
-	}
-	defer os.RemoveAll(tempDir)
+	tempDir := t.TempDir()
 
 	for _, tc := range []struct {
 		name string
@@ -229,11 +225,7 @@ record 3...
 }
 
 func TestCatFile(t *testing.T) {
-	tempDir, err := ioutil.TempDir("", "go-arrow-cat-file-")
-	if err != nil {
-		t.Fatal(err)
-	}
-	defer os.RemoveAll(tempDir)
+	tempDir := t.TempDir()
 
 	for _, tc := range []struct {
 		name   string
diff --git a/go/arrow/ipc/cmd/arrow-file-to-stream/main_test.go b/go/arrow/ipc/cmd/arrow-file-to-stream/main_test.go
index 2f7200fbf5..57f0bc5d99 100644
--- a/go/arrow/ipc/cmd/arrow-file-to-stream/main_test.go
+++ b/go/arrow/ipc/cmd/arrow-file-to-stream/main_test.go
@@ -19,7 +19,6 @@ package main
 import (
 	"io"
 	"io/ioutil"
-	"os"
 	"testing"
 
 	"github.com/apache/arrow/go/v10/arrow/internal/arrdata"
@@ -27,11 +26,7 @@ import (
 )
 
 func TestFileToStream(t *testing.T) {
-	tempDir, err := ioutil.TempDir("", "go-arrow-file-to-stream-")
-	if err != nil {
-		t.Fatal(err)
-	}
-	defer os.RemoveAll(tempDir)
+	tempDir := t.TempDir()
 
 	for name, recs := range arrdata.Records {
 		t.Run(name, func(t *testing.T) {
diff --git a/go/arrow/ipc/cmd/arrow-json-integration-test/main_test.go b/go/arrow/ipc/cmd/arrow-json-integration-test/main_test.go
index c6bd0d87e0..2cf1356b12 100644
--- a/go/arrow/ipc/cmd/arrow-json-integration-test/main_test.go
+++ b/go/arrow/ipc/cmd/arrow-json-integration-test/main_test.go
@@ -26,11 +26,7 @@ import (
 )
 
 func TestIntegration(t *testing.T) {
-	tempDir, err := ioutil.TempDir("", "go-arrow-integration-")
-	if err != nil {
-		t.Fatal(err)
-	}
-	defer os.RemoveAll(tempDir)
+	tempDir := t.TempDir()
 
 	const verbose = true
 	for name, recs := range arrdata.Records {
diff --git a/go/arrow/ipc/cmd/arrow-ls/main_test.go b/go/arrow/ipc/cmd/arrow-ls/main_test.go
index 78260374f4..6fb53b8463 100644
--- a/go/arrow/ipc/cmd/arrow-ls/main_test.go
+++ b/go/arrow/ipc/cmd/arrow-ls/main_test.go
@@ -31,11 +31,7 @@ import (
 )
 
 func TestLsStream(t *testing.T) {
-	tempDir, err := ioutil.TempDir("", "go-arrow-ls-stream-")
-	if err != nil {
-		t.Fatal(err)
-	}
-	defer os.RemoveAll(tempDir)
+	tempDir := t.TempDir()
 
 	for _, tc := range []struct {
 		name string
@@ -174,11 +170,7 @@ records: 3
 }
 
 func TestLsFile(t *testing.T) {
-	tempDir, err := ioutil.TempDir("", "go-arrow-ls-file-")
-	if err != nil {
-		t.Fatal(err)
-	}
-	defer os.RemoveAll(tempDir)
+	tempDir := t.TempDir()
 
 	for _, tc := range []struct {
 		stream bool
diff --git a/go/arrow/ipc/cmd/arrow-stream-to-file/main_test.go b/go/arrow/ipc/cmd/arrow-stream-to-file/main_test.go
index b07f515925..667d193153 100644
--- a/go/arrow/ipc/cmd/arrow-stream-to-file/main_test.go
+++ b/go/arrow/ipc/cmd/arrow-stream-to-file/main_test.go
@@ -19,7 +19,6 @@ package main
 import (
 	"io"
 	"io/ioutil"
-	"os"
 	"testing"
 
 	"github.com/apache/arrow/go/v10/arrow/internal/arrdata"
@@ -27,11 +26,7 @@ import (
 )
 
 func TestStreamToFile(t *testing.T) {
-	tempDir, err := ioutil.TempDir("", "go-arrow-stream-to-file-")
-	if err != nil {
-		t.Fatal(err)
-	}
-	defer os.RemoveAll(tempDir)
+	tempDir := t.TempDir()
 
 	for name, recs := range arrdata.Records {
 		t.Run(name, func(t *testing.T) {
@@ -60,6 +55,7 @@ func TestStreamToFile(t *testing.T) {
 			if err != nil {
 				t.Fatal(err)
 			}
+			defer o.Close()
 
 			err = processStream(o, f)
 			if err != nil {
diff --git a/go/arrow/ipc/file_test.go b/go/arrow/ipc/file_test.go
index 63a4fba49e..a8fa1be91f 100644
--- a/go/arrow/ipc/file_test.go
+++ b/go/arrow/ipc/file_test.go
@@ -19,7 +19,6 @@ package ipc_test
 import (
 	"fmt"
 	"io/ioutil"
-	"os"
 	"testing"
 
 	"github.com/apache/arrow/go/v10/arrow/internal/arrdata"
@@ -28,11 +27,7 @@ import (
 )
 
 func TestFile(t *testing.T) {
-	tempDir, err := ioutil.TempDir("", "go-arrow-file-")
-	if err != nil {
-		t.Fatal(err)
-	}
-	defer os.RemoveAll(tempDir)
+	tempDir := t.TempDir()
 
 	for name, recs := range arrdata.Records {
 		t.Run(name, func(t *testing.T) {
@@ -53,11 +48,7 @@ func TestFile(t *testing.T) {
 }
 
 func TestFileCompressed(t *testing.T) {
-	tempDir, err := ioutil.TempDir("", "go-arrow-file-")
-	if err != nil {
-		t.Fatal(err)
-	}
-	defer os.RemoveAll(tempDir)
+	tempDir := t.TempDir()
 
 	compressTypes := []flatbuf.CompressionType{
 		flatbuf.CompressionTypeLZ4_FRAME, flatbuf.CompressionTypeZSTD,
diff --git a/go/arrow/ipc/stream_test.go b/go/arrow/ipc/stream_test.go
index 83094c28cd..3fb86c2afc 100644
--- a/go/arrow/ipc/stream_test.go
+++ b/go/arrow/ipc/stream_test.go
@@ -19,7 +19,6 @@ package ipc_test
 import (
 	"io"
 	"io/ioutil"
-	"os"
 	"strconv"
 	"testing"
 
@@ -29,11 +28,7 @@ import (
 )
 
 func TestStream(t *testing.T) {
-	tempDir, err := ioutil.TempDir("", "go-arrow-stream-")
-	if err != nil {
-		t.Fatal(err)
-	}
-	defer os.RemoveAll(tempDir)
+	tempDir := t.TempDir()
 
 	for name, recs := range arrdata.Records {
 		t.Run(name, func(t *testing.T) {
@@ -64,11 +59,7 @@ func TestStream(t *testing.T) {
 }
 
 func TestStreamCompressed(t *testing.T) {
-	tempDir, err := ioutil.TempDir("", "go-arrow-stream-")
-	if err != nil {
-		t.Fatal(err)
-	}
-	defer os.RemoveAll(tempDir)
+	tempDir := t.TempDir()
 
 	compressTypes := []flatbuf.CompressionType{
 		flatbuf.CompressionTypeLZ4_FRAME, flatbuf.CompressionTypeZSTD,