client = slclient.NewSoftLayerClient(username, apiKey) }) Context("#NewSoftLayerClient", func() { It("creates a new client with username and apiKey", func() { Expect(username).ToNot(Equal(""), "username cannot be empty, set SL_USERNAME") Expect(apiKey).ToNot(Equal(""), "apiKey cannot be empty, set SL_API_KEY") client = slclient.NewSoftLayerClient(username, apiKey) Expect(client).ToNot(BeNil()) }) }) Context("#GetService", func() { It("returns a service with name specified", func() { accountService, err := client.GetService("SoftLayer_Account") Expect(err).ToNot(HaveOccurred()) Expect(accountService).ToNot(BeNil()) }) It("fails when passed a bad service name", func() { _, err := client.GetService("fake-service-name") Expect(err).To(HaveOccurred()) Expect(err.Error()).To(Equal("softlayer-go does not support service 'fake-service-name'")) }) }) Context("#GetSoftLayer_Account_Service", func() { It("returns a instance implemementing the SoftLayer_Account_Service interface", func() { var accountService softlayer.SoftLayer_Account_Service accountService, err := client.GetSoftLayer_Account_Service()