| Index: cmd/jujud/machine_test.go |
| === modified file 'cmd/jujud/machine_test.go' |
| --- cmd/jujud/machine_test.go 2012-09-28 07:21:43 +0000 |
| +++ cmd/jujud/machine_test.go 2012-09-28 12:51:24 +0000 |
| @@ -69,3 +69,32 @@ |
| c.Assert(err, IsNil) |
| c.Assert(<-done, IsNil) |
| } |
| + |
| +func (s *MachineSuite) TestWithDeadMachine(c *C) { |
| + m, err := s.State.AddMachine(state.MachinerWorker) |
| + c.Assert(err, IsNil) |
| + err = m.EnsureDead() |
| + c.Assert(err, IsNil) |
| + a := &MachineAgent{ |
| + Conf: AgentConf{ |
| + DataDir: c.MkDir(), |
| + StateInfo: *s.StateInfo(c), |
| + }, |
| + MachineId: m.Id(), |
| + } |
| + err = runWithTimeout(a) |
| + c.Assert(err, IsNil) |
| + |
| + // try again with the machine removed. |
| + err = s.State.RemoveMachine(m.Id()) |
| + c.Assert(err, IsNil) |
| + a = &MachineAgent{ |
| + Conf: AgentConf{ |
| + DataDir: c.MkDir(), |
| + StateInfo: *s.StateInfo(c), |
| + }, |
| + MachineId: m.Id(), |
| + } |
| + err = runWithTimeout(a) |
| + c.Assert(err, IsNil) |
| +} |