github.com/mmcquillan/packer@v1.1.1-0.20171009221028-c85cf0483a5d/builder/oracle/oci/client/client_test.go (about) 1 package oci 2 3 import ( 4 "net/http" 5 "net/http/httptest" 6 "net/url" 7 "os" 8 9 "github.com/go-ini/ini" 10 ) 11 12 var ( 13 mux *http.ServeMux 14 client *Client 15 server *httptest.Server 16 keyFile *os.File 17 ) 18 19 // setup sets up a test HTTP server along with a oci.Client that is 20 // configured to talk to that test server. Tests should register handlers on 21 // mux which provide mock responses for the API method being tested. 22 func setup() { 23 mux = http.NewServeMux() 24 server = httptest.NewServer(mux) 25 parsedURL, _ := url.Parse(server.URL) 26 27 config := &Config{} 28 config.baseURL = parsedURL.String() 29 30 var cfg *ini.File 31 var err error 32 cfg, keyFile, err = BaseTestConfig() 33 34 config, err = loadConfigSection(cfg, "DEFAULT", config) 35 if err != nil { 36 panic(err) 37 } 38 39 client, err = NewClient(config) 40 if err != nil { 41 panic("Failed to instantiate test client") 42 } 43 } 44 45 // teardown closes the test HTTP server 46 func teardown() { 47 server.Close() 48 os.Remove(keyFile.Name()) 49 }