本文整理匯總了Golang中github.com/cloudfoundry/hm9000/testhelpers/appfixture.DeaFixture.GetApp方法的典型用法代碼示例。如果您正苦於以下問題:Golang DeaFixture.GetApp方法的具體用法?Golang DeaFixture.GetApp怎麽用?Golang DeaFixture.GetApp使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類github.com/cloudfoundry/hm9000/testhelpers/appfixture.DeaFixture
的用法示例。
在下文中一共展示了DeaFixture.GetApp方法的7個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1:
package mcat_test
import (
"github.com/cloudfoundry/hm9000/models"
"github.com/cloudfoundry/hm9000/testhelpers/appfixture"
. "github.com/onsi/ginkgo"
. "github.com/onsi/gomega"
)
var _ = Describe("Evacuation and Shutdown", func() {
var dea appfixture.DeaFixture
var app appfixture.AppFixture
BeforeEach(func() {
dea = appfixture.NewDeaFixture()
app = dea.GetApp(0)
simulator.SetCurrentHeartbeats(dea.HeartbeatWith(app.InstanceAtIndex(0).Heartbeat()))
simulator.SetDesiredState(app.DesiredState(1))
simulator.Tick(simulator.TicksToAttainFreshness)
})
Describe("Shutdown handling by the evacuator component", func() {
Context("when a SHUTDOWN droplet.exited message comes in", func() {
BeforeEach(func() {
cliRunner.StartEvacuator(simulator.currentTimestamp)
coordinator.MessageBus.Publish("droplet.exited", app.InstanceAtIndex(0).DropletExited(models.DropletExitedReasonDEAShutdown).ToJSON())
})
AfterEach(func() {
cliRunner.StopEvacuator()
})
示例2:
app3 appfixture.AppFixture
app4 appfixture.AppFixture
crashCount []models.CrashCount
)
conf, _ = config.DefaultConfig()
BeforeEach(func() {
storeAdapter = etcdstoreadapter.NewETCDStoreAdapter(etcdRunner.NodeURLS(), workerpool.NewWorkerPool(conf.StoreMaxConcurrentRequests))
err := storeAdapter.Connect()
Ω(err).ShouldNot(HaveOccurred())
store = NewStore(conf, storeAdapter, fakelogger.NewFakeLogger())
dea = appfixture.NewDeaFixture()
app1 = dea.GetApp(0)
app2 = dea.GetApp(1)
app3 = dea.GetApp(2)
app4 = dea.GetApp(3)
actualState := []models.InstanceHeartbeat{
app1.InstanceAtIndex(0).Heartbeat(),
app1.InstanceAtIndex(1).Heartbeat(),
app1.InstanceAtIndex(2).Heartbeat(),
app2.InstanceAtIndex(0).Heartbeat(),
}
desiredState := []models.DesiredAppState{
app1.DesiredState(1),
app3.DesiredState(1),
}
示例3:
"github.com/cloudfoundry/hm9000/models"
"github.com/cloudfoundry/hm9000/testhelpers/appfixture"
. "github.com/onsi/ginkgo"
. "github.com/onsi/gomega"
)
var _ = Describe("Crashes", func() {
var (
dea appfixture.DeaFixture
a appfixture.AppFixture
crashingHeartbeat models.Heartbeat
)
BeforeEach(func() {
dea = appfixture.NewDeaFixture()
a = dea.GetApp(0)
})
Describe("when all instances are crashed", func() {
BeforeEach(func() {
simulator.SetDesiredState(a.DesiredState(3))
crashingHeartbeat = dea.HeartbeatWith(
a.CrashedInstanceHeartbeatAtIndex(0),
a.CrashedInstanceHeartbeatAtIndex(1),
a.CrashedInstanceHeartbeatAtIndex(2),
)
simulator.SetCurrentHeartbeats(crashingHeartbeat)
simulator.Tick(simulator.TicksToAttainFreshness)
})
示例4:
store storepackage.Store
clock *fakeclock.FakeClock
dea appfixture.DeaFixture
app appfixture.AppFixture
)
conf, _ := config.DefaultConfig()
BeforeEach(func() {
storeAdapter = fakestoreadapter.New()
store = storepackage.NewStore(conf, storeAdapter, fakelogger.NewFakeLogger())
clock = fakeclock.NewFakeClock(time.Unix(1000, 0))
dea = appfixture.NewDeaFixture()
app = dea.GetApp(0)
store.BumpActualFreshness(time.Unix(100, 0))
store.BumpDesiredFreshness(time.Unix(100, 0))
analyzer = New(store, clock, fakelogger.NewFakeLogger(), conf)
})
startMessages := func() []models.PendingStartMessage {
messages, _ := store.GetPendingStartMessages()
messagesArr := []models.PendingStartMessage{}
for _, message := range messages {
messagesArr = append(messagesArr, message)
}
return messagesArr
}
示例5:
import (
"github.com/cloudfoundry/hm9000/testhelpers/appfixture"
. "github.com/onsi/ginkgo"
. "github.com/onsi/gomega"
)
var _ = Describe("Expiring Heartbeats Test", func() {
var dea1, dea2 appfixture.DeaFixture
var app1, app2, app3 appfixture.AppFixture
BeforeEach(func() {
dea1 = appfixture.NewDeaFixture()
dea2 = appfixture.NewDeaFixture()
app1 = dea1.GetApp(0)
app2 = dea1.GetApp(1)
app3 = dea2.GetApp(2)
simulator.SetCurrentHeartbeats(
dea1.HeartbeatWith(app1.InstanceAtIndex(0).Heartbeat(), app2.InstanceAtIndex(0).Heartbeat()),
dea2.HeartbeatWith(app3.InstanceAtIndex(0).Heartbeat()),
)
simulator.SetDesiredState(app1.DesiredState(1), app2.DesiredState(1), app3.DesiredState(1))
simulator.Tick(simulator.TicksToAttainFreshness)
})
Context("when a dea reports than an instance is no longer present", func() {
BeforeEach(func() {
simulator.SetCurrentHeartbeats(
dea1.HeartbeatWith(app1.InstanceAtIndex(0).Heartbeat()),
示例6:
Ω(context.Metrics).Should(ContainElement(instrumentation.Metric{Name: "NumberOfMissingIndices", Value: -1}))
Ω(context.Metrics).Should(ContainElement(instrumentation.Metric{Name: "NumberOfCrashedInstances", Value: -1}))
Ω(context.Metrics).Should(ContainElement(instrumentation.Metric{Name: "NumberOfCrashedIndices", Value: -1}))
Ω(context.Metrics).Should(ContainElement(instrumentation.Metric{Name: "NumberOfDesiredApps", Value: -1}))
Ω(context.Metrics).Should(ContainElement(instrumentation.Metric{Name: "NumberOfDesiredInstances", Value: -1}))
Ω(context.Metrics).Should(ContainElement(instrumentation.Metric{Name: "NumberOfDesiredAppsPendingStaging", Value: -1}))
})
})
Context("when the store is fresh", func() {
var dea appfixture.DeaFixture
var a appfixture.AppFixture
BeforeEach(func() {
dea = appfixture.NewDeaFixture()
a = dea.GetApp(0)
store.BumpDesiredFreshness(time.Unix(0, 0))
store.BumpActualFreshness(time.Unix(0, 0))
})
Context("when the apps fail to load", func() {
BeforeEach(func() {
storeAdapter.ListErrInjector = fakestoreadapter.NewFakeStoreAdapterErrorInjector("apps", errors.New("oops"))
})
It("should emit -1 for all its metrics", func() {
context := metricsServer.Emit()
Ω(context.Metrics).Should(ContainElement(instrumentation.Metric{Name: "NumberOfAppsWithAllInstancesReporting", Value: -1}))
Ω(context.Metrics).Should(ContainElement(instrumentation.Metric{Name: "NumberOfAppsWithMissingInstances", Value: -1}))
Ω(context.Metrics).Should(ContainElement(instrumentation.Metric{Name: "NumberOfUndesiredRunningApps", Value: -1}))
Ω(context.Metrics).Should(ContainElement(instrumentation.Metric{Name: "NumberOfRunningInstances", Value: -1}))
示例7:
Ω(err).ShouldNot(HaveOccurred())
conf.StoreHeartbeatCacheRefreshIntervalInMilliseconds = 100
store = NewStore(conf, storeAdapter, fakelogger.NewFakeLogger())
dea = appfixture.NewDeaFixture()
otherDea = appfixture.NewDeaFixture()
})
AfterEach(func() {
storeAdapter.Disconnect()
})
Describe("Saving actual state", func() {
BeforeEach(func() {
store.SyncHeartbeats(dea.HeartbeatWith(
dea.GetApp(0).InstanceAtIndex(1).Heartbeat(),
dea.GetApp(1).InstanceAtIndex(3).Heartbeat(),
))
})
It("should save the instance heartbeats for the passed-in heartbeat", func() {
results, err := store.GetInstanceHeartbeats()
Ω(err).ShouldNot(HaveOccurred())
Ω(results).Should(HaveLen(2))
Ω(results).Should(ContainElement(dea.GetApp(0).InstanceAtIndex(1).Heartbeat()))
Ω(results).Should(ContainElement(dea.GetApp(1).InstanceAtIndex(3).Heartbeat()))
})
Context("when there are already instance heartbeats stored for the DEA in question", func() {
var modifiedHeartbeat models.InstanceHeartbeat
BeforeEach(func() {