github.com/makyo/juju@v0.0.0-20160425123129-2608902037e9/provider/vsphere/provider_test.go (about) 1 // Copyright 2015 Canonical Ltd. 2 // Licensed under the AGPLv3, see LICENCE file for details. 3 4 // +build !gccgo 5 6 package vsphere_test 7 8 import ( 9 jc "github.com/juju/testing/checkers" 10 gc "gopkg.in/check.v1" 11 12 "github.com/juju/juju/cloud" 13 "github.com/juju/juju/environs" 14 "github.com/juju/juju/environs/testing" 15 "github.com/juju/juju/provider/vsphere" 16 ) 17 18 type providerSuite struct { 19 vsphere.BaseSuite 20 21 provider environs.EnvironProvider 22 } 23 24 var _ = gc.Suite(&providerSuite{}) 25 26 func (s *providerSuite) SetUpTest(c *gc.C) { 27 s.BaseSuite.SetUpTest(c) 28 29 var err error 30 s.provider, err = environs.Provider("vsphere") 31 c.Check(err, jc.ErrorIsNil) 32 } 33 34 func (s *providerSuite) TestRegistered(c *gc.C) { 35 c.Assert(s.provider, gc.Equals, vsphere.Provider) 36 } 37 38 func (s *providerSuite) TestOpen(c *gc.C) { 39 env, err := s.provider.Open(s.Config) 40 c.Check(err, jc.ErrorIsNil) 41 42 envConfig := env.Config() 43 c.Assert(envConfig.Name(), gc.Equals, "testenv") 44 } 45 46 func (s *providerSuite) TestBootstrapConfig(c *gc.C) { 47 cfg, err := s.provider.BootstrapConfig(environs.BootstrapConfigParams{ 48 Config: s.Config, 49 Credentials: cloud.NewCredential( 50 cloud.UserPassAuthType, 51 map[string]string{"user": "u", "password": "p"}, 52 ), 53 }) 54 c.Check(err, jc.ErrorIsNil) 55 c.Check(cfg, gc.NotNil) 56 } 57 58 func (s *providerSuite) TestPrepareForBootstrap(c *gc.C) { 59 env, err := s.provider.PrepareForBootstrap(testing.BootstrapContext(c), s.Config) 60 c.Check(err, jc.ErrorIsNil) 61 c.Check(env, gc.NotNil) 62 } 63 64 func (s *providerSuite) TestValidate(c *gc.C) { 65 validCfg, err := s.provider.Validate(s.Config, nil) 66 c.Check(err, jc.ErrorIsNil) 67 68 validAttrs := validCfg.AllAttrs() 69 c.Assert(s.Config.AllAttrs(), gc.DeepEquals, validAttrs) 70 } 71 72 func (s *providerSuite) TestSecretAttrs(c *gc.C) { 73 obtainedAttrs, err := s.provider.SecretAttrs(s.Config) 74 c.Check(err, jc.ErrorIsNil) 75 76 expectedAttrs := map[string]string{"password": "password1"} 77 c.Assert(obtainedAttrs, gc.DeepEquals, expectedAttrs) 78 79 }