~ubuntu-branches/ubuntu/saucy/juju-core/saucy-updates

« back to all changes in this revision

Viewing changes to src/launchpad.net/juju-core/juju/apiconn_test.go

  • Committer: Package Import Robot
  • Author(s): James Page
  • Date: 2013-09-03 14:22:22 UTC
  • mfrom: (1.1.7)
  • Revision ID: package-import@ubuntu.com-20130903142222-9mes2r8wqr0bs7lp
Tags: 1.13.3-0ubuntu1
New upstream point release.

Show diffs side-by-side

added added

removed removed

Lines of Context:
9
9
        "launchpad.net/juju-core/constraints"
10
10
        "launchpad.net/juju-core/environs"
11
11
        "launchpad.net/juju-core/environs/bootstrap"
 
12
        "launchpad.net/juju-core/environs/config"
12
13
        "launchpad.net/juju-core/juju"
13
14
        "launchpad.net/juju-core/provider/dummy"
14
15
        coretesting "launchpad.net/juju-core/testing"
26
27
}
27
28
 
28
29
func (*NewAPIConnSuite) TestNewConn(c *gc.C) {
29
 
        attrs := map[string]interface{}{
 
30
        cfg, err := config.New(map[string]interface{}{
30
31
                "name":            "erewhemos",
31
32
                "type":            "dummy",
32
33
                "state-server":    true,
35
36
                "admin-secret":    "really",
36
37
                "ca-cert":         coretesting.CACert,
37
38
                "ca-private-key":  coretesting.CAKey,
38
 
        }
39
 
        env, err := environs.NewFromAttrs(attrs)
 
39
        })
 
40
        c.Assert(err, gc.IsNil)
 
41
        env, err := environs.Prepare(cfg)
40
42
        c.Assert(err, gc.IsNil)
41
43
        err = bootstrap.Bootstrap(env, constraints.Value{})
42
44
        c.Assert(err, gc.IsNil)
49
51
 
50
52
        c.Assert(conn.Close(), gc.IsNil)
51
53
}
 
54
 
 
55
type NewAPIClientSuite struct {
 
56
        coretesting.LoggingSuite
 
57
}
 
58
 
 
59
var _ = gc.Suite(&NewAPIClientSuite{})
 
60
 
 
61
func (cs *NewAPIClientSuite) TearDownTest(c *gc.C) {
 
62
        dummy.Reset()
 
63
        cs.LoggingSuite.TearDownTest(c)
 
64
}
 
65
 
 
66
func (*NewAPIClientSuite) TestNameDefault(c *gc.C) {
 
67
        defer coretesting.MakeMultipleEnvHome(c).Restore()
 
68
        // The default environment is "erewhemos", we should get it if we ask for ""
 
69
        defaultEnvName := "erewhemos"
 
70
        bootstrapEnv(c, defaultEnvName)
 
71
        apiclient, err := juju.NewAPIClientFromName("")
 
72
        c.Assert(err, gc.IsNil)
 
73
        defer apiclient.Close()
 
74
        envInfo, err := apiclient.EnvironmentInfo()
 
75
        c.Assert(err, gc.IsNil)
 
76
        c.Assert(envInfo.Name, gc.Equals, defaultEnvName)
 
77
}
 
78
 
 
79
func (*NewAPIClientSuite) TestNameNotDefault(c *gc.C) {
 
80
        defer coretesting.MakeMultipleEnvHome(c).Restore()
 
81
        // The default environment is "erewhemos", make sure we get the other one.
 
82
        const envName = "erewhemos-2"
 
83
        bootstrapEnv(c, envName)
 
84
        apiclient, err := juju.NewAPIClientFromName(envName)
 
85
        c.Assert(err, gc.IsNil)
 
86
        defer apiclient.Close()
 
87
        envInfo, err := apiclient.EnvironmentInfo()
 
88
        c.Assert(err, gc.IsNil)
 
89
        c.Assert(envInfo.Name, gc.Equals, envName)
 
90
}
 
91
 
 
92
// TODO(jam): 2013-08-27 This should move somewhere in api.*
 
93
func (*NewAPIClientSuite) TestMultipleCloseOk(c *gc.C) {
 
94
        defer coretesting.MakeSampleHome(c).Restore()
 
95
        bootstrapEnv(c, "")
 
96
        client, _ := juju.NewAPIClientFromName("")
 
97
        c.Assert(client.Close(), gc.IsNil)
 
98
        c.Assert(client.Close(), gc.IsNil)
 
99
        c.Assert(client.Close(), gc.IsNil)
 
100
}