本文整理匯總了Golang中github.com/cloudfoundry-incubator/lattice/ltc/config/target_verifier.TargetVerifier.VerifyTarget方法的典型用法代碼示例。如果您正苦於以下問題:Golang TargetVerifier.VerifyTarget方法的具體用法?Golang TargetVerifier.VerifyTarget怎麽用?Golang TargetVerifier.VerifyTarget使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類github.com/cloudfoundry-incubator/lattice/ltc/config/target_verifier.TargetVerifier
的用法示例。
在下文中一共展示了TargetVerifier.VerifyTarget方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1: MakeCliApp
func MakeCliApp(
diegoVersion string,
latticeVersion string,
ltcConfigRoot string,
exitHandler exit_handler.ExitHandler,
config *config.Config,
logger lager.Logger,
receptorClientCreator receptor_client.Creator,
targetVerifier target_verifier.TargetVerifier,
cliStdout io.Writer,
) *cli.App {
config.Load()
app := cli.NewApp()
app.Name = AppName
app.Author = latticeCliAuthor
app.Version = defaultVersion(diegoVersion, latticeVersion)
app.Usage = LtcUsage
app.Email = "[email protected]"
ui := terminal.NewUI(os.Stdin, cliStdout, password_reader.NewPasswordReader(exitHandler))
app.Writer = ui
app.Before = func(context *cli.Context) error {
args := context.Args()
command := app.Command(args.First())
if command == nil {
return nil
}
if _, ok := nonTargetVerifiedCommandNames[command.Name]; ok || len(args) == 0 {
return nil
}
if receptorUp, authorized, err := targetVerifier.VerifyTarget(config.Receptor()); !receptorUp {
ui.SayLine(fmt.Sprintf("Error connecting to the receptor. Make sure your lattice target is set, and that lattice is up and running.\n\tUnderlying error: %s", err.Error()))
return err
} else if !authorized {
ui.SayLine("Could not authenticate with the receptor. Please run ltc target with the correct credentials.")
return errors.New("Could not authenticate with the receptor.")
}
return nil
}
app.Action = defaultAction
app.CommandNotFound = func(c *cli.Context, command string) {
ui.SayLine(fmt.Sprintf(unknownCommand, command))
exitHandler.Exit(1)
}
app.Commands = cliCommands(ltcConfigRoot, exitHandler, config, logger, receptorClientCreator, targetVerifier, ui)
return app
}
示例2:
Describe("VerifyTarget", func() {
var (
fakeReceptorClient *fake_receptor.FakeClient
fakeReceptorClientCreator *fake_receptor_client_creator.FakeCreator
targetVerifier target_verifier.TargetVerifier
)
BeforeEach(func() {
fakeReceptorClient = &fake_receptor.FakeClient{}
fakeReceptorClientCreator = &fake_receptor_client_creator.FakeCreator{}
fakeReceptorClientCreator.CreateReceptorClientReturns(fakeReceptorClient)
targetVerifier = target_verifier.New(fakeReceptorClientCreator)
})
It("returns up=true, auth=true if the receptor does not return an error", func() {
up, auth, err := targetVerifier.VerifyTarget("http://receptor.mylattice.com")
Expect(err).NotTo(HaveOccurred())
Expect(up).To(BeTrue())
Expect(auth).To(BeTrue())
Expect(fakeReceptorClientCreator.CreateReceptorClientCallCount()).To(Equal(1))
Expect(fakeReceptorClientCreator.CreateReceptorClientArgsForCall(0)).To(Equal("http://receptor.mylattice.com"))
})
It("returns up=true, auth=false if the receptor returns an authorization error", func() {
fakeReceptorClient.DesiredLRPsReturns([]receptor.DesiredLRPResponse{}, receptor.Error{
Type: receptor.Unauthorized,
Message: "Go home. You're not welcome here.",
})
up, auth, err := targetVerifier.VerifyTarget("http://receptor.mylattice.com")
Expect(err).NotTo(HaveOccurred())