options.Target = "..."
				badCmd2 = bmp.NewTargetCommand(options, fakeBmpClient)
			})

			It("returns false on validation", func() {
				validate, err := badCmd1.Validate()
				Expect(validate).To(BeFalse())
				Expect(err).To(HaveOccurred())

				validate, err = badCmd2.Validate()
				Expect(validate).To(BeFalse())
				Expect(err).To(HaveOccurred())
			})
		})
	})

	Describe("#Execute", func() {
		It("executes a good TargetCommand", func() {
			rc, err := cmd.Execute(args)
			Expect(rc).To(Equal(0))
			Expect(err).ToNot(HaveOccurred())

			c := config.NewConfig(fakeBmpClient.ConfigPath())
			configInfo, err := c.LoadConfig()
			Expect(err).ToNot(HaveOccurred())
			Expect(configInfo.TargetUrl).To(Equal("http://fake.url"))
		})
	})
})
				fakeBmpClient = clientsfakes.NewFakeBmpClient(options.Username, options.Password, "http://fake.target.url", tmpFileName)

				fakeBmpClient.LoginResponse.Status = 200
				fakeBmpClient.LoginErr = nil

				cmd = bmp.NewLoginCommand(options, fakeBmpClient)
			})

			It("executes with no error", func() {
				rc, err := cmd.Execute(args)
				Expect(rc).To(Equal(0))
				Expect(err).ToNot(HaveOccurred())
			})

			It("saves the Username and Password to Config", func() {
				configInfo, err := common.CreateConfig(fakeBmpClient.ConfigPath())
				Expect(err).ToNot(HaveOccurred())

				Expect(configInfo.Username).To(Equal(""))
				Expect(configInfo.Password).To(Equal(""))
				Expect(configInfo.TargetUrl).To(Equal(""))

				rc, err := cmd.Execute(args)
				Expect(rc).To(Equal(0))
				Expect(err).ToNot(HaveOccurred())

				c := config.NewConfig(fakeBmpClient.ConfigPath())
				Expect(err).ToNot(HaveOccurred())

				configInfo, err = c.LoadConfig()
				Expect(err).ToNot(HaveOccurred())