~juju-qa/ubuntu/xenial/juju/xenial-2.0-beta3

« back to all changes in this revision

Viewing changes to src/github.com/juju/juju/state/machine_test.go

  • Committer: Martin Packman
  • Date: 2016-03-30 19:31:08 UTC
  • mfrom: (1.1.41)
  • Revision ID: martin.packman@canonical.com-20160330193108-h9iz3ak334uk0z5r
Merge new upstream source 2.0~beta3

Show diffs side-by-side

added added

removed removed

Lines of Context:
12
12
        "github.com/juju/names"
13
13
        jc "github.com/juju/testing/checkers"
14
14
        jujutxn "github.com/juju/txn"
 
15
        "github.com/juju/version"
15
16
        gc "gopkg.in/check.v1"
16
17
        "gopkg.in/mgo.v2"
17
18
        "gopkg.in/mgo.v2/bson"
22
23
        "github.com/juju/juju/network"
23
24
        "github.com/juju/juju/state"
24
25
        "github.com/juju/juju/state/testing"
 
26
        "github.com/juju/juju/status"
25
27
        "github.com/juju/juju/storage/poolmanager"
26
28
        "github.com/juju/juju/storage/provider"
27
29
        "github.com/juju/juju/storage/provider/registry"
28
30
        coretesting "github.com/juju/juju/testing"
29
 
        "github.com/juju/juju/version"
30
31
)
31
32
 
32
33
type MachineSuite struct {
703
704
        c.Assert(m.PasswordValid(goodPassword), jc.IsTrue)
704
705
}
705
706
 
706
 
func (s *MachineSuite) TestSetAgentCompatPassword(c *gc.C) {
707
 
        e, err := s.State.Machine(s.machine.Id())
708
 
        c.Assert(err, jc.ErrorIsNil)
709
 
        testSetAgentCompatPassword(c, e)
710
 
}
711
 
 
712
707
func (s *MachineSuite) TestMachineWaitAgentPresence(c *gc.C) {
713
708
        alive, err := s.machine.AgentPresence()
714
709
        c.Assert(err, jc.ErrorIsNil)
1175
1170
        err := s.machine.SetProvisioned("umbrella/0", "fake_nonce", nil)
1176
1171
        c.Assert(err, jc.ErrorIsNil)
1177
1172
 
1178
 
        err = s.machine.SetInstanceStatus("ALIVE")
 
1173
        err = s.machine.SetInstanceStatus(status.StatusRunning, "alive", map[string]interface{}{})
1179
1174
        c.Assert(err, jc.ErrorIsNil)
1180
1175
 
1181
1176
        // Reload machine and check result.
1182
1177
        err = s.machine.Refresh()
1183
1178
        c.Assert(err, jc.ErrorIsNil)
1184
 
        status, err := s.machine.InstanceStatus()
 
1179
        machineStatus, err := s.machine.InstanceStatus()
1185
1180
        c.Assert(err, jc.ErrorIsNil)
1186
 
        c.Assert(status, gc.DeepEquals, "ALIVE")
1187
 
}
1188
 
 
1189
 
func (s *MachineSuite) TestNotProvisionedMachineSetInstanceStatus(c *gc.C) {
1190
 
        err := s.machine.SetInstanceStatus("ALIVE")
1191
 
        c.Assert(err, gc.ErrorMatches, ".* not provisioned")
1192
 
}
1193
 
 
1194
 
func (s *MachineSuite) TestNotProvisionedMachineInstanceStatus(c *gc.C) {
1195
 
        _, err := s.machine.InstanceStatus()
1196
 
        c.Assert(err, jc.Satisfies, errors.IsNotProvisioned)
 
1181
        c.Assert(machineStatus.Status, gc.DeepEquals, status.StatusRunning)
 
1182
        c.Assert(machineStatus.Message, gc.DeepEquals, "alive")
1197
1183
}
1198
1184
 
1199
1185
func (s *MachineSuite) TestMachineRefresh(c *gc.C) {
1431
1417
        wc.AssertNoChange()
1432
1418
 
1433
1419
        // Change the unit; no change.
1434
 
        err = mysql0.SetAgentStatus(state.StatusIdle, "", nil)
 
1420
        err = mysql0.SetAgentStatus(status.StatusIdle, "", nil)
1435
1421
        c.Assert(err, jc.ErrorIsNil)
1436
1422
        wc.AssertNoChange()
1437
1423
 
1460
1446
        wc.AssertNoChange()
1461
1447
 
1462
1448
        // Change the subordinate; no change.
1463
 
        err = logging0.SetAgentStatus(state.StatusIdle, "", nil)
 
1449
        err = logging0.SetAgentStatus(status.StatusIdle, "", nil)
1464
1450
        c.Assert(err, jc.ErrorIsNil)
1465
1451
        wc.AssertNoChange()
1466
1452
 
1535
1521
        wc.AssertNoChange()
1536
1522
 
1537
1523
        // Change the unit; no change.
1538
 
        err = mysql0.SetAgentStatus(state.StatusIdle, "", nil)
 
1524
        err = mysql0.SetAgentStatus(status.StatusIdle, "", nil)
1539
1525
        c.Assert(err, jc.ErrorIsNil)
1540
1526
        wc.AssertNoChange()
1541
1527
 
1565
1551
        wc.AssertNoChange()
1566
1552
 
1567
1553
        // Change the subordinate; no change.
1568
 
        err = logging0.SetAgentStatus(state.StatusIdle, "", nil)
 
1554
        err = logging0.SetAgentStatus(status.StatusIdle, "", nil)
1569
1555
        c.Assert(err, jc.ErrorIsNil)
1570
1556
        wc.AssertNoChange()
1571
1557
 
2495
2481
        c.Assert(err, jc.ErrorIsNil)
2496
2482
        statusInfo, err := supportedContainer.Status()
2497
2483
        c.Assert(err, jc.ErrorIsNil)
2498
 
        c.Assert(statusInfo.Status, gc.Equals, state.StatusPending)
 
2484
        c.Assert(statusInfo.Status, gc.Equals, status.StatusPending)
2499
2485
 
2500
2486
        // An unsupported (lxc) container will have an error status.
2501
2487
        err = container.Refresh()
2502
2488
        c.Assert(err, jc.ErrorIsNil)
2503
2489
        statusInfo, err = container.Status()
2504
2490
        c.Assert(err, jc.ErrorIsNil)
2505
 
        c.Assert(statusInfo.Status, gc.Equals, state.StatusError)
 
2491
        c.Assert(statusInfo.Status, gc.Equals, status.StatusError)
2506
2492
        c.Assert(statusInfo.Message, gc.Equals, "unsupported container")
2507
2493
        c.Assert(statusInfo.Data, gc.DeepEquals, map[string]interface{}{"type": "lxc"})
2508
2494
}
2530
2516
                c.Assert(err, jc.ErrorIsNil)
2531
2517
                statusInfo, err := container.Status()
2532
2518
                c.Assert(err, jc.ErrorIsNil)
2533
 
                c.Assert(statusInfo.Status, gc.Equals, state.StatusError)
 
2519
                c.Assert(statusInfo.Status, gc.Equals, status.StatusError)
2534
2520
                c.Assert(statusInfo.Message, gc.Equals, "unsupported container")
2535
2521
                containerType := state.ContainerTypeFromId(container.Id())
2536
2522
                c.Assert(statusInfo.Data, gc.DeepEquals, map[string]interface{}{"type": string(containerType)})