29 lines
797 B
Go
29 lines
797 B
Go
package util_test
|
|
|
|
import (
|
|
"os"
|
|
"testing"
|
|
|
|
"allaboutapps.dev/aw/go-starter/internal/util"
|
|
"github.com/stretchr/testify/assert"
|
|
"github.com/stretchr/testify/require"
|
|
)
|
|
|
|
func TestTouchfile(t *testing.T) {
|
|
err := os.Remove("/tmp/.touchfile-test")
|
|
if err != nil {
|
|
require.Truef(t, os.IsNotExist(err), "Only permitting os.IsNotExist(err) as file may not preexistant on test start, but is: %v", err)
|
|
}
|
|
|
|
ts1, err := util.TouchFile("/tmp/.touchfile-test")
|
|
require.NoError(t, err)
|
|
|
|
ts2, err := util.TouchFile("/tmp/.touchfile-test")
|
|
require.NoError(t, err)
|
|
require.NotEqual(t, ts1.UnixNano(), ts2.UnixNano())
|
|
|
|
zeroTime, err := util.TouchFile("/this/path/does/not/exist/.touchfile-test")
|
|
require.Error(t, err)
|
|
assert.True(t, zeroTime.IsZero(), "time.Time on error should be zero time")
|
|
}
|