本文整理匯總了Golang中github.com/cloudfoundry/cli/cf/errors.NewInvalidSSLCert函數的典型用法代碼示例。如果您正苦於以下問題:Golang NewInvalidSSLCert函數的具體用法?Golang NewInvalidSSLCert怎麽用?Golang NewInvalidSSLCert使用的例子?那麽, 這裏精選的函數代碼示例或許可以為您提供幫助。
在下文中一共展示了NewInvalidSSLCert函數的8個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1: WrapNetworkErrors
func WrapNetworkErrors(host string, err error) error {
var innerErr error
switch typedErr := err.(type) {
case *url.Error:
innerErr = typedErr.Err
case *websocket.DialError:
innerErr = typedErr.Err
}
if innerErr != nil {
switch typedErr := innerErr.(type) {
case x509.UnknownAuthorityError:
return errors.NewInvalidSSLCert(host, T("unknown authority"))
case x509.HostnameError:
return errors.NewInvalidSSLCert(host, T("not valid for the requested host"))
case x509.CertificateInvalidError:
return errors.NewInvalidSSLCert(host, "")
case *net.OpError:
return typedErr.Err
}
}
return errors.NewWithError(T("Error performing request"), err)
}
示例2: WrapNetworkErrors
func WrapNetworkErrors(host string, err error) error {
var innerErr error
switch typedErr := err.(type) {
case *url.Error:
innerErr = typedErr.Err
case *websocket.DialError:
innerErr = typedErr.Err
}
if innerErr != nil {
switch typedInnerErr := innerErr.(type) {
case x509.UnknownAuthorityError:
return errors.NewInvalidSSLCert(host, T("unknown authority"))
case x509.HostnameError:
return errors.NewInvalidSSLCert(host, T("not valid for the requested host"))
case x509.CertificateInvalidError:
return errors.NewInvalidSSLCert(host, "")
case *net.OpError:
if typedInnerErr.Op == "dial" {
return fmt.Errorf("%s: %s\n%s", T("Error performing request"), err.Error(), T("TIP: If you are behind a firewall and require an HTTP proxy, verify the https_proxy environment variable is correctly set. Else, check your network connection."))
}
}
}
return fmt.Errorf("%s: %s", T("Error performing request"), err.Error())
}
示例3:
It("tails the app's logs when no flags are given", func() {
runCommand("my-app")
Expect(requirementsFactory.ApplicationName).To(Equal("my-app"))
appGuid, _, _ := logsRepo.TailLogsForArgsForCall(0)
Expect(app.Guid).To(Equal(appGuid))
Expect(ui.Outputs).To(ContainSubstrings(
[]string{"Connected, tailing logs for app", "my-app", "my-org", "my-space", "my-user"},
[]string{"Log Line 1"},
))
})
Context("when the loggregator server has an invalid cert", func() {
Context("when the skip-ssl-validation flag is not set", func() {
It("fails and informs the user about the skip-ssl-validation flag", func() {
logsRepo.TailLogsForReturns(errors.NewInvalidSSLCert("https://example.com", "it don't work good"))
runCommand("my-app")
Expect(ui.Outputs).To(ContainSubstrings(
[]string{"Received invalid SSL certificate", "https://example.com"},
[]string{"TIP"},
))
})
It("informs the user of the error when they include the --recent flag", func() {
logsRepo.RecentLogsForReturns(nil, errors.NewInvalidSSLCert("https://example.com", "how does SSL work???"))
runCommand("--recent", "my-app")
Expect(ui.Outputs).To(ContainSubstrings(
[]string{"Received invalid SSL certificate", "https://example.com"},
[]string{"TIP"},
示例4:
ItDoesntShowTheTarget()
It("clears the entire config", func() {
Expect(Config.APIEndpoint()).To(BeEmpty())
Expect(Config.IsSSLDisabled()).To(BeFalse())
Expect(Config.AccessToken()).To(BeEmpty())
Expect(Config.RefreshToken()).To(BeEmpty())
Expect(Config.OrganizationFields().GUID).To(BeEmpty())
Expect(Config.SpaceFields().GUID).To(BeEmpty())
})
})
})
Describe("when there is an invalid SSL cert", func() {
BeforeEach(func() {
endpointRepo.GetCCInfoReturns(nil, "", errors.NewInvalidSSLCert("https://bobs-burgers.com", "SELF SIGNED SADNESS"))
ui.Inputs = []string{"bobs-burgers.com"}
})
It("fails and suggests the user skip SSL validation", func() {
Expect(ui.Outputs).To(ContainSubstrings(
[]string{"FAILED"},
[]string{"SSL Cert", "https://bobs-burgers.com"},
[]string{"TIP", "login", "--skip-ssl-validation"},
))
})
ItDoesntShowTheTarget()
})
})
示例5:
}
var _ = Describe("api command", func() {
var (
config configuration.ReadWriter
endpointRepo *testapi.FakeEndpointRepo
)
BeforeEach(func() {
config = testconfig.NewRepository()
endpointRepo = &testapi.FakeEndpointRepo{}
})
Context("when the api endpoint's ssl certificate is invalid", func() {
It("warns the user and prints out a tip", func() {
endpointRepo.UpdateEndpointError = errors.NewInvalidSSLCert("https://buttontomatoes.org", "why? no. go away")
ui := callApi([]string{"https://buttontomatoes.org"}, config, endpointRepo)
Expect(ui.Outputs).To(ContainSubstrings(
[]string{"FAILED"},
[]string{"SSL Cert", "https://buttontomatoes.org"},
[]string{"TIP", "--skip-ssl-validation"},
))
})
})
Context("when the user does not provide an endpoint", func() {
Context("when the endpoint is set in the config", func() {
var (
ui *testterm.FakeUI
requirementsFactory *testreq.FakeReqFactory
示例6:
repoLocator = api.RepositoryLocator{}.SetEndpointRepository(endpointRepo)
deps = commandregistry.Dependency{
UI: ui,
Config: config,
RepoLocator: repoLocator,
}
cmd = commands.API{}.SetDependency(deps, false).(commands.API)
flagContext = flags.NewFlagContext(cmd.MetaData().Flags)
})
Context("when the api endpoint's ssl certificate is invalid", func() {
It("warns the user and prints out a tip", func() {
endpointRepo.GetCCInfoReturns(nil, "", errors.NewInvalidSSLCert("https://buttontomatoes.org", "why? no. go away"))
callApi([]string{"https://buttontomatoes.org"})
Expect(runCLIErr).To(HaveOccurred())
Expect(runCLIErr.Error()).To(ContainSubstring("Invalid SSL Cert for https://buttontomatoes.org"))
Expect(runCLIErr.Error()).To(ContainSubstring("TIP"))
Expect(runCLIErr.Error()).To(ContainSubstring("--skip-ssl-validation"))
})
})
Context("when the user does not provide an endpoint", func() {
Context("when the endpoint is set in the config", func() {
BeforeEach(func() {
config.SetAPIEndpoint("https://api.run.pivotal.io")
config.SetAPIVersion("2.0")
config.SetSSLDisabled(true)
示例7:
ItDoesntShowTheTarget()
It("clears the entire config", func() {
Expect(Config.ApiEndpoint()).To(BeEmpty())
Expect(Config.IsSSLDisabled()).To(BeFalse())
Expect(Config.AccessToken()).To(BeEmpty())
Expect(Config.RefreshToken()).To(BeEmpty())
Expect(Config.OrganizationFields().Guid).To(BeEmpty())
Expect(Config.SpaceFields().Guid).To(BeEmpty())
})
})
})
Describe("when there is an invalid SSL cert", func() {
BeforeEach(func() {
endpointRepo.UpdateEndpointError = errors.NewInvalidSSLCert("https://bobs-burgers.com", "SELF SIGNED SADNESS")
ui.Inputs = []string{"bobs-burgers.com"}
})
It("fails and suggests the user skip SSL validation", func() {
Expect(ui.Outputs).To(ContainSubstrings(
[]string{"FAILED"},
[]string{"SSL Cert", "https://bobs-burgers.com"},
[]string{"TIP", "login", "--skip-ssl-validation"},
))
})
ItDoesntShowTheTarget()
})
})
示例8:
It("tails the app's logs when no flags are given", func() {
runCommand("my-app")
Expect(requirementsFactory.ApplicationName).To(Equal("my-app"))
Expect(app.Guid).To(Equal(logsRepo.AppLoggedGuid))
Expect(ui.Outputs).To(ContainSubstrings(
[]string{"Connected, tailing logs for app", "my-app", "my-org", "my-space", "my-user"},
[]string{"Log Line 1"},
))
})
Context("when the loggregator server has an invalid cert", func() {
Context("when the skip-ssl-validation flag is not set", func() {
It("fails and informs the user about the skip-ssl-validation flag", func() {
logsRepo.TailLogErr = errors.NewInvalidSSLCert("https://example.com", "it don't work good")
runCommand("my-app")
Expect(ui.Outputs).To(ContainSubstrings(
[]string{"Received invalid SSL certificate", "https://example.com"},
[]string{"TIP"},
))
})
It("informs the user of the error when they include the --recent flag", func() {
logsRepo.RecentLogErr = errors.NewInvalidSSLCert("https://example.com", "how does SSL work???")
runCommand("--recent", "my-app")
Expect(ui.Outputs).To(ContainSubstrings(
[]string{"Received invalid SSL certificate", "https://example.com"},
[]string{"TIP"},