本文整理汇总了Golang中github.com/juju/juju/payload/state.UnitPayloads类的典型用法代码示例。如果您正苦于以下问题:Golang UnitPayloads类的具体用法?Golang UnitPayloads怎么用?Golang UnitPayloads使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了UnitPayloads类的13个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: TestListAll
func (s *unitPayloadsSuite) TestListAll(c *gc.C) {
id1 := "f47ac10b-58cc-4372-a567-0e02b2c3d479"
id2 := "f47ac10b-58cc-4372-a567-0e02b2c3d480"
pl1 := s.newPayload("docker", "payloadA/payloadA-xyz")
pl2 := s.newPayload("docker", "payloadB/payloadB-abc")
s.persist.setPayload(id1, &pl1)
s.persist.setPayload(id2, &pl2)
fpi1 := payload.FullPayloadInfo{Payload: pl1}
fpi2 := payload.FullPayloadInfo{Payload: pl2}
ps := state.UnitPayloads{
Persist: s.persist,
Unit: "a-service/0",
}
results, err := ps.List()
c.Assert(err, jc.ErrorIsNil)
s.stub.CheckCallNames(c, "ListAll", "LookUp", "LookUp")
c.Assert(results, gc.HasLen, 2)
if results[0].Payload.Name == "payloadA" {
c.Check(results[0].Payload, jc.DeepEquals, &fpi1)
c.Check(results[1].Payload, jc.DeepEquals, &fpi2)
} else {
c.Check(results[0].Payload, jc.DeepEquals, &fpi2)
c.Check(results[1].Payload, jc.DeepEquals, &fpi1)
}
}
示例2: TestSetStatusMissing
func (s *unitPayloadsSuite) TestSetStatusMissing(c *gc.C) {
id := "f47ac10b-58cc-4372-a567-0e02b2c3d479"
ps := state.UnitPayloads{
Persist: s.persist,
Unit: "a-service/0",
}
err := ps.SetStatus(id, payload.StateRunning)
c.Check(err, jc.Satisfies, errors.IsNotFound)
}
示例3: TestUntrackMissing
func (s *unitPayloadsSuite) TestUntrackMissing(c *gc.C) {
id := "f47ac10b-58cc-4372-a567-0e02b2c3d479"
ps := state.UnitPayloads{
Persist: s.persist,
Unit: "a-service/0",
}
err := ps.Untrack(id)
c.Assert(err, jc.ErrorIsNil)
s.stub.CheckCallNames(c, "Untrack")
c.Check(s.persist.payloads, gc.HasLen, 0)
}
示例4: TestListFailed
func (s *unitPayloadsSuite) TestListFailed(c *gc.C) {
failure := errors.Errorf("<failed!>")
s.stub.SetErrors(failure)
ps := state.UnitPayloads{
Persist: s.persist,
Unit: "a-service/0",
}
_, err := ps.List()
s.stub.CheckCallNames(c, "ListAll")
c.Check(errors.Cause(err), gc.Equals, failure)
}
示例5: TestTrackInvalid
func (s *unitPayloadsSuite) TestTrackInvalid(c *gc.C) {
s.id = "f47ac10b-58cc-4372-a567-0e02b2c3d479"
pl := s.newPayload("", "payloadA/payloadA-xyz")
ps := state.UnitPayloads{
Persist: s.persist,
Unit: "a-service/0",
}
ps = state.SetNewID(ps, s.newID)
err := ps.Track(pl)
c.Check(err, jc.Satisfies, errors.IsNotValid)
}
示例6: TestUntrackFailed
func (s *unitPayloadsSuite) TestUntrackFailed(c *gc.C) {
id := "f47ac10b-58cc-4372-a567-0e02b2c3d479"
failure := errors.Errorf("<failed!>")
s.stub.SetErrors(failure)
ps := state.UnitPayloads{
Persist: s.persist,
Unit: "a-service/0",
}
err := ps.Untrack(id)
s.stub.CheckCallNames(c, "Untrack")
c.Check(errors.Cause(err), gc.Equals, failure)
}
示例7: TestUntrackOkay
func (s *unitPayloadsSuite) TestUntrackOkay(c *gc.C) {
id := "f47ac10b-58cc-4372-a567-0e02b2c3d479"
pl := s.newPayload("docker", "payloadA/payloadA-xyz")
s.persist.setPayload(id, &pl)
ps := state.UnitPayloads{
Persist: s.persist,
Unit: "a-service/0",
}
err := ps.Untrack(id)
c.Assert(err, jc.ErrorIsNil)
s.stub.CheckCallNames(c, "Untrack")
c.Check(s.persist.payloads, gc.HasLen, 0)
}
示例8: TestSetStatusFailed
func (s *unitPayloadsSuite) TestSetStatusFailed(c *gc.C) {
id := "f47ac10b-58cc-4372-a567-0e02b2c3d479"
failure := errors.Errorf("<failed!>")
s.stub.SetErrors(failure)
pl := s.newPayload("docker", "payloadA/payloadA-xyz")
s.persist.setPayload(id, &pl)
ps := state.UnitPayloads{
Persist: s.persist,
Unit: "a-service/0",
}
err := ps.SetStatus(id, payload.StateRunning)
c.Check(errors.Cause(err), gc.Equals, failure)
}
示例9: TestTrackInsertFailed
func (s *unitPayloadsSuite) TestTrackInsertFailed(c *gc.C) {
s.id = "f47ac10b-58cc-4372-a567-0e02b2c3d479"
failure := errors.Errorf("<failed!>")
s.stub.SetErrors(failure)
pl := s.newPayload("docker", "payloadA/payloadA-xyz")
ps := state.UnitPayloads{
Persist: s.persist,
Unit: "a-service/0",
}
ps = state.SetNewID(ps, s.newID)
err := ps.Track(pl)
c.Check(errors.Cause(err), gc.Equals, failure)
}
示例10: TestTrackOkay
func (s *unitPayloadsSuite) TestTrackOkay(c *gc.C) {
s.id = "f47ac10b-58cc-4372-a567-0e02b2c3d479"
pl := s.newPayload("docker", "payloadA/payloadA-xyz")
ps := state.UnitPayloads{
Persist: s.persist,
Unit: "a-service/0",
}
ps = state.SetNewID(ps, s.newID)
err := ps.Track(pl)
c.Assert(err, jc.ErrorIsNil)
s.stub.CheckCallNames(c, "newID", "Track")
c.Check(s.persist.payloads, gc.HasLen, 1)
s.persist.checkPayload(c, s.id, pl)
}
示例11: TestSetStatusOkay
func (s *unitPayloadsSuite) TestSetStatusOkay(c *gc.C) {
id := "f47ac10b-58cc-4372-a567-0e02b2c3d479"
pl := s.newPayload("docker", "payloadA/payloadA-xyz")
s.persist.setPayload(id, &pl)
ps := state.UnitPayloads{
Persist: s.persist,
Unit: "a-service/0",
}
err := ps.SetStatus(id, payload.StateRunning)
c.Assert(err, jc.ErrorIsNil)
s.stub.CheckCallNames(c, "SetStatus")
current := s.persist.payloads[id]
c.Check(current.Status, jc.DeepEquals, payload.StateRunning)
}
示例12: TestListOkay
func (s *unitPayloadsSuite) TestListOkay(c *gc.C) {
id := "f47ac10b-58cc-4372-a567-0e02b2c3d479"
otherID := "f47ac10b-58cc-4372-a567-0e02b2c3d480"
pl := s.newPayload("docker", "payloadA/payloadA-xyz")
other := s.newPayload("docker", "payloadB/payloadB-abc")
s.persist.setPayload(id, &pl)
s.persist.setPayload(otherID, &other)
ps := state.UnitPayloads{
Persist: s.persist,
Unit: "a-service/0",
}
results, err := ps.List(id)
c.Assert(err, jc.ErrorIsNil)
s.stub.CheckCallNames(c, "List")
c.Check(results, jc.DeepEquals, []payload.Result{{
ID: id,
Payload: &payload.FullPayloadInfo{Payload: pl},
}})
}
示例13: TestListMissing
func (s *unitPayloadsSuite) TestListMissing(c *gc.C) {
missingID := "f47ac10b-58cc-4372-a567-0e02b2c3d480"
id := "f47ac10b-58cc-4372-a567-0e02b2c3d479"
pl := s.newPayload("docker", "payloadA/payloadA-xyz")
s.persist.setPayload(id, &pl)
ps := state.UnitPayloads{
Persist: s.persist,
Unit: "a-service/0",
}
results, err := ps.List(id, missingID)
c.Assert(err, jc.ErrorIsNil)
c.Assert(results, gc.HasLen, 2)
c.Check(results[1].Error, gc.NotNil)
results[1].Error = nil
c.Check(results, jc.DeepEquals, []payload.Result{{
ID: id,
Payload: &payload.FullPayloadInfo{Payload: pl},
}, {
ID: missingID,
NotFound: true,
}})
}