Example #1
0
		client = awsclient.Client{
			IAM: iamClient,
		}
		userName = fmt.Sprintf("some-user-%x", rand.Int31()>>16)
	})

	Describe("CreateAccessKey", func() {
		It("should call the SDK CreateAccessKey function", func() {
			iamClient.CreateAccessKeyCall.Returns.Output = &iam.CreateAccessKeyOutput{
				AccessKey: &iam.AccessKey{
					AccessKeyId:     aws.String("some-access-key"),
					SecretAccessKey: aws.String("some-secret-access-key"),
				},
			}

			accessKey, secretKey, err := client.CreateAccessKey(userName)
			Expect(err).NotTo(HaveOccurred())
			Expect(accessKey).To(Equal("some-access-key"))
			Expect(secretKey).To(Equal("some-secret-access-key"))

			Expect(*iamClient.CreateAccessKeyCall.Receives.Input.UserName).To(Equal(userName))
		})

		Context("when the SDK returns an error", func() {
			It("should return the error", func() {
				iamClient.CreateAccessKeyCall.Returns.Error = errors.New("some error")

				_, _, err := client.CreateAccessKey(userName)
				Expect(err).To(MatchError("some error"))
			})
		})