Files
Gokapi/internal/helper/OS_test.go
2021-06-24 13:34:53 +02:00

62 lines
1.6 KiB
Go

// +build test
package helper
import (
"Gokapi/internal/test"
"io/ioutil"
"os"
"testing"
)
func TestIsInArray(t *testing.T) {
test.IsEqualBool(t, IsInArray([]string{"test", "test2", "test3"}, "test2"), true)
test.IsEqualBool(t, IsInArray([]string{"test", "test2", "test3"}, "invalid"), false)
}
func TestFolderCreation(t *testing.T) {
test.IsEqualBool(t, FolderExists("invalid"), false)
test.FileDoesNotExist(t, "invalid/file")
test.IsEqualBool(t, FileExists("invalid/file"), false)
CreateDir("invalid")
test.IsEqualBool(t, FolderExists("invalid"), true)
err := ioutil.WriteFile("invalid/file", []byte("test"), 0644)
if err != nil {
t.Error(err)
}
test.FileExists(t, "invalid/file")
test.IsEqualBool(t, FileExists("invalid/file"), true)
os.RemoveAll("invalid")
}
func TestReadLine(t *testing.T) {
original := test.StartMockInputStdin("test")
output := ReadLine()
test.StopMockInputStdin(original)
test.IsEqualString(t, output, "test")
}
func TestReadPassword(t *testing.T) {
original := test.StartMockInputStdin("testpw")
output := ReadPassword()
test.StopMockInputStdin(original)
test.IsEqualString(t, output, "testpw")
}
func TestGetFileSize(t *testing.T) {
os.WriteFile("testfile", []byte(""), 0777)
file, err := os.OpenFile("testfile", os.O_RDONLY, 0644)
if err != nil {
t.Fatal(err)
}
size, _ := GetFileSize(file)
test.IsEqualInt(t, int(size), 0)
os.WriteFile("testfile", []byte("123"), 0777)
size, _ = GetFileSize(file)
test.IsEqualInt(t, int(size), 3)
file, _ = os.OpenFile("invalid", os.O_RDONLY, 0644)
size, _ = GetFileSize(file)
test.IsEqualInt(t, int(size), 0)
os.Remove("testfile")
}