github.com/pivotal-cf/go-pivnet/v6@v6.0.2/integration/init_test.go (about) 1 package integration_test 2 3 import ( 4 "fmt" 5 "os" 6 7 "github.com/pivotal-cf/go-pivnet/v6" 8 "github.com/pivotal-cf/go-pivnet/v6/logger" 9 "github.com/robdimsdale/sanitizer" 10 11 . "github.com/onsi/ginkgo" 12 . "github.com/onsi/gomega" 13 14 "testing" 15 ) 16 17 const testProductSlug = "pivnet-resource-test" 18 19 var client pivnet.Client 20 21 func TestIntegration(t *testing.T) { 22 RegisterFailHandler(Fail) 23 RunSpecs(t, "Integration Suite") 24 } 25 26 var _ = BeforeSuite(func() { 27 APIToken := os.Getenv("API_TOKEN") 28 Host := os.Getenv("HOST") 29 30 if APIToken == "" { 31 Fail("API_TOKEN must be set for integration tests to run") 32 } 33 34 if Host == "" { 35 Fail("HOST must be set for integration tests to run") 36 } 37 38 By("Sanitizing acceptance test output") 39 sanitized := map[string]string{ 40 APIToken: "***sanitized-api-token***", 41 } 42 sanitizedWriter := sanitizer.NewSanitizer(sanitized, GinkgoWriter) 43 GinkgoWriter = sanitizedWriter 44 45 accessTokenService := pivnet.NewAccessTokenOrLegacyToken(APIToken, Host, false) 46 47 config := pivnet.ClientConfig{ 48 Host: Host, 49 UserAgent: "go-pivnet/integration-test", 50 } 51 52 logger := GinkgoLogShim{} 53 54 client = pivnet.NewClient(accessTokenService, config, logger) 55 56 ok, err := client.Auth.Check() 57 Expect(err).NotTo(HaveOccurred()) 58 Expect(ok).To(BeTrue()) 59 }) 60 61 type GinkgoLogShim struct { 62 } 63 64 func (l GinkgoLogShim) Debug(action string, data ...logger.Data) { 65 l.Info(action, data...) 66 } 67 68 func (l GinkgoLogShim) Info(action string, data ...logger.Data) { 69 GinkgoWriter.Write([]byte(fmt.Sprintf("%s%s\n", action, appendString(data...)))) 70 } 71 72 func appendString(data ...logger.Data) string { 73 if len(data) > 0 { 74 return fmt.Sprintf(" - %+v", data) 75 } 76 return "" 77 }