func (s *UpgradeSuite) checkUpgradeInfoArchived( c *gc.C, initialInfo *state.UpgradeInfo, expectedStatus state.UpgradeStatus, expectedControllers int, ) { info := s.getOneUpgradeInfo(c) c.Assert(info.Status(), gc.Equals, expectedStatus) c.Assert(info.PreviousVersion(), gc.Equals, initialInfo.PreviousVersion()) c.Assert(info.TargetVersion(), gc.Equals, initialInfo.TargetVersion()) // Truncate because mongo only stores times down to millisecond resolution. c.Assert(info.Started().Equal(initialInfo.Started().Truncate(time.Millisecond)), jc.IsTrue) c.Assert(len(info.ControllersDone()), gc.Equals, expectedControllers) if expectedControllers > 0 { c.Assert(info.ControllersDone(), jc.SameContents, info.ControllersReady()) } }