本文整理汇总了Golang中github.com/juju/juju/state.Unit.SetMeterStatus方法的典型用法代码示例。如果您正苦于以下问题:Golang Unit.SetMeterStatus方法的具体用法?Golang Unit.SetMeterStatus怎么用?Golang Unit.SetMeterStatus使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/juju/juju/state.Unit
的用法示例。
在下文中一共展示了Unit.SetMeterStatus方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: TestWatchMeterStatus
// TestWatchMeterStatus tests the meter status watcher functionality.
func TestWatchMeterStatus(c *gc.C, status meterstatus.MeterStatus, unit *jujustate.Unit, state *jujustate.State, resources *common.Resources) {
c.Assert(resources.Count(), gc.Equals, 0)
args := params.Entities{Entities: []params.Entity{
{Tag: unit.UnitTag().String()},
{Tag: "unit-foo-42"},
}}
result, err := status.WatchMeterStatus(args)
c.Assert(err, jc.ErrorIsNil)
c.Assert(result, gc.DeepEquals, params.NotifyWatchResults{
Results: []params.NotifyWatchResult{
{NotifyWatcherId: "1"},
{Error: apiservertesting.ErrUnauthorized},
},
})
// Verify the resource was registered and stop when done
c.Assert(resources.Count(), gc.Equals, 1)
resource := resources.Get("1")
defer statetesting.AssertStop(c, resource)
// Check that the Watch has consumed the initial event ("returned" in
// the Watch call)
wc := statetesting.NewNotifyWatcherC(c, state, resource.(jujustate.NotifyWatcher))
wc.AssertNoChange()
err = unit.SetMeterStatus("GREEN", "No additional information.")
c.Assert(err, jc.ErrorIsNil)
wc.AssertOneChange()
}
示例2: TestGetMeterStatus
// TestGetMeterStatus tests unit meter status retrieval.
func TestGetMeterStatus(c *gc.C, status meterstatus.MeterStatus, unit *jujustate.Unit) {
args := params.Entities{Entities: []params.Entity{{Tag: unit.Tag().String()}}}
result, err := status.GetMeterStatus(args)
c.Assert(err, jc.ErrorIsNil)
c.Assert(result.Results, gc.HasLen, 1)
c.Assert(result.Results[0].Error, gc.IsNil)
c.Assert(result.Results[0].Code, gc.Equals, "AMBER")
c.Assert(result.Results[0].Info, gc.Equals, "not set")
newCode := "GREEN"
newInfo := "All is ok."
err = unit.SetMeterStatus(newCode, newInfo)
c.Assert(err, jc.ErrorIsNil)
result, err = status.GetMeterStatus(args)
c.Assert(err, jc.ErrorIsNil)
c.Assert(result.Results, gc.HasLen, 1)
c.Assert(result.Results[0].Error, gc.IsNil)
c.Assert(result.Results[0].Code, gc.DeepEquals, newCode)
c.Assert(result.Results[0].Info, gc.DeepEquals, newInfo)
}