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"
35
36
"admin-secret": "really",
36
37
"ca-cert": coretesting.CACert,
37
38
"ca-private-key": coretesting.CAKey,
39
env, err := environs.NewFromAttrs(attrs)
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)
50
52
c.Assert(conn.Close(), gc.IsNil)
55
type NewAPIClientSuite struct {
56
coretesting.LoggingSuite
59
var _ = gc.Suite(&NewAPIClientSuite{})
61
func (cs *NewAPIClientSuite) TearDownTest(c *gc.C) {
63
cs.LoggingSuite.TearDownTest(c)
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)
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)
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()
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)