github.com/brimstone/sbuca@v0.0.0-20151202175429-8691d9eba5c5/sbuca_test.go (about) 1 package main 2 3 import ( 4 "io/ioutil" 5 "os" 6 "testing" 7 ) 8 9 func SetupTest() string { 10 dir, err := ioutil.TempDir(os.TempDir(), "sbuca-") 11 12 if err != nil { 13 panic(err) 14 } 15 16 err = os.Chdir(dir) 17 if err != nil { 18 panic(err) 19 } 20 21 return dir 22 } 23 24 func TearDown(dir string) { 25 os.RemoveAll(dir) 26 } 27 28 func Test_main(t *testing.T) { 29 defer TearDown(SetupTest()) 30 oldArgs := os.Args 31 defer func() { os.Args = oldArgs }() 32 33 os.Args = []string{"sbuca"} 34 main() 35 } 36 37 func Test_main_genkey(t *testing.T) { 38 defer TearDown(SetupTest()) 39 oldArgs := os.Args 40 defer func() { os.Args = oldArgs }() 41 42 os.Args = []string{"sbuca", 43 "oneshot", 44 "--key", 45 "server.key", 46 "--crt", 47 "server.crt", 48 "--ca", 49 "ca.crt", 50 "--host", 51 "localhost:8600", 52 } 53 main() 54 }