forked from TrueCloudLab/neoneo-go
7c48177bf7
Problem: ``` --- FAIL: TestMakeDirForFile_HappyPath (0.01s) testing.go:894: TempDir RemoveAll cleanup: remove C:\Users\Anna\AppData\Local\Temp\TestMakeDirForFile_HappyPath402638411\001\testDir\testFile.test: The process cannot access the file because it is being used by another process. --- FAIL: TestMakeDirForFile_Negative (0.01s) testing.go:894: TempDir RemoveAll cleanup: remove C:\Users\Anna\AppData\Local\Temp\TestMakeDirForFile_Negative672737582\001\testFile.test: The process cannot access the file because it is being used by another process. FAIL ``` Solution: Release resources occupied by os.Create.
32 lines
778 B
Go
32 lines
778 B
Go
package io
|
|
|
|
import (
|
|
"os"
|
|
"path"
|
|
"testing"
|
|
|
|
"github.com/stretchr/testify/require"
|
|
)
|
|
|
|
func TestMakeDirForFile_HappyPath(t *testing.T) {
|
|
tempDir := t.TempDir()
|
|
filePath := path.Join(tempDir, "testDir", "testFile.test")
|
|
err := MakeDirForFile(filePath, "test")
|
|
require.NoError(t, err)
|
|
|
|
f, errChDir := os.Create(filePath)
|
|
require.NoError(t, errChDir)
|
|
require.NoError(t, f.Close())
|
|
}
|
|
|
|
func TestMakeDirForFile_Negative(t *testing.T) {
|
|
tempDir := t.TempDir()
|
|
filePath := path.Join(tempDir, "testFile.test")
|
|
f, err := os.Create(filePath)
|
|
require.NoError(t, err)
|
|
require.NoError(t, f.Close())
|
|
|
|
filePath = path.Join(filePath, "error")
|
|
err = MakeDirForFile(filePath, "test")
|
|
require.Errorf(t, err, "could not create dir for test: mkdir %s : not a directory", filePath)
|
|
}
|