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  }