コード例 #1
0
		BeforeEach(func() {
			hardware = datatypes.SoftLayer_Hardware{
				Domain: "softlayer.com",
				FullyQualifiedDomainName: "fake.softlayer.com",
				Hostname:                 "fake-hostname",
				Id:                       1234567,
				GlobalIdentifier:         "fake-globalIdentifier",
				PrimaryBackendIpAddress:  "fake-primary-backend-ip",
				PrimaryIpAddress:         "fake-primary-ip",
			}
		})

		It("Allow access to storage from hardware", func() {
			fakeClient.FakeHttpClient.DoRawHttpRequestResponse = []byte("true")

			resp, err := networkStorageService.AttachNetworkStorageToHardware(hardware, 123)
			Expect(err).ToNot(HaveOccurred())
			Expect(resp).To(Equal(true))
		})

		Context("when HTTP client returns error codes 40x or 50x", func() {
			It("fails for error code 40x", func() {
				errorCodes := []int{400, 401, 499}
				for _, errorCode := range errorCodes {
					fakeClient.FakeHttpClient.DoRawHttpRequestInt = errorCode
					fakeClient.FakeHttpClient.DoRawHttpRequestResponse = []byte("true")

					_, err := networkStorageService.AttachNetworkStorageToHardware(hardware, 123)
					Expect(err).To(HaveOccurred())
				}
			})