unit tests for load from file

main
Brad Rydzewski 7 years ago committed by Jacob McCann
parent 21fcab0dee
commit c698b821b8

@ -2,6 +2,8 @@ package cli
import (
"fmt"
"io"
"io/ioutil"
"os"
"reflect"
"regexp"
@ -1291,22 +1293,37 @@ func TestParseGenericFromEnvCascade(t *testing.T) {
a.Run([]string{"run"})
}
// func TestFlagFromFile(t *testing.T) {
// temp, err := ioutil.TempFile("", "urfave_cli_test")
// if err != nil {
// t.Error(err)
// return
// }
// io.WriteString(temp, "abc")
// temp.Close()
// defer func() {
// os.Remove(temp.Name())
// }()
//
// if want, got := flagFromFileEnv("file-does-not-exist", "123"), "123"; want != got {
// t.Errorf("Did not expect %v - Got %v", want, got)
// }
// if want, got := flagFromFile(temp.Name(), "123"), "abc"; want != got {
// t.Errorf("Did not expect %v - Got %v", want, got)
// }
// }
func TestFlagFromFile(t *testing.T) {
os.Clearenv()
os.Setenv("APP_FOO", "123")
temp, err := ioutil.TempFile("", "urfave_cli_test")
if err != nil {
t.Error(err)
return
}
io.WriteString(temp, "abc")
temp.Close()
defer func() {
os.Remove(temp.Name())
}()
var filePathTests = []struct {
path string
name string
expected string
}{
{"file-does-not-exist", "APP_BAR", ""},
{"file-does-not-exist", "APP_FOO", "123"},
{"file-does-not-exist", "APP_FOO,APP_BAR", "123"},
{temp.Name(), "APP_FOO", "123"},
{temp.Name(), "APP_BAR", "abc"},
}
for _, filePathTest := range filePathTests {
got, _ := flagFromFileEnv(filePathTest.path, filePathTest.name)
if want := filePathTest.expected; got != want {
t.Errorf("Did not expect %v - Want %v", got, want)
}
}
}

Loading…
Cancel
Save