Expect(productPackages[0].Name).To(Equal("Cloud Server 2")) }) }) Context("#GetOnePackageByType", func() { BeforeEach(func() { fakeClient.DoRawHttpRequestResponse, err = testhelpers.ReadJsonTestFixtures("services", "SoftLayer_Product_Package_getAllObjects_virtual_server.json") Expect(err).ToNot(HaveOccurred()) }) It("reports error when NO product packages are found", func() { fakeClient.DoRawHttpRequestResponse, err = testhelpers.ReadJsonTestFixtures("services", "SoftLayer_Product_Package_getAllObjects_virtual_server_empty.json") GinkgoWriter.Write(fakeClient.DoRawHttpRequestResponse) _, err := productPackageService.GetOnePackageByType("SOME_TYPE") Expect(err).To(HaveOccurred()) Expect(err.Error()).To(Equal("No packages available for type 'SOME_TYPE'.")) }) It("returns datatypes.Softlayer_Product_Package", func() { fakeClient.DoRawHttpRequestResponse, err = testhelpers.ReadJsonTestFixtures("services", "SoftLayer_Product_Package_getAllObjects_virtual_server.json") productPackage, err := productPackageService.GetOnePackageByType("VIRTUAL_SERVER_INSTANCE") Expect(err).ToNot(HaveOccurred()) Expect(productPackage.Id).To(Equal(200)) Expect(productPackage.Name).To(Equal("Cloud Server 1")) }) }) })