github.com/cloud-green/juju@v0.0.0-20151002100041-a00291338d3d/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/environs" 13 envtesting "github.com/juju/juju/environs/testing" 14 "github.com/juju/juju/provider/vsphere" 15 ) 16 17 type providerSuite struct { 18 vsphere.BaseSuite 19 20 provider environs.EnvironProvider 21 } 22 23 var _ = gc.Suite(&providerSuite{}) 24 25 func (s *providerSuite) SetUpTest(c *gc.C) { 26 s.BaseSuite.SetUpTest(c) 27 28 var err error 29 s.provider, err = environs.Provider("vsphere") 30 c.Check(err, jc.ErrorIsNil) 31 } 32 33 func (s *providerSuite) TestRegistered(c *gc.C) { 34 c.Assert(s.provider, gc.Equals, vsphere.Provider) 35 } 36 37 func (s *providerSuite) TestOpen(c *gc.C) { 38 env, err := s.provider.Open(s.Config) 39 c.Check(err, jc.ErrorIsNil) 40 41 envConfig := env.Config() 42 c.Assert(envConfig.Name(), gc.Equals, "testenv") 43 } 44 45 func (s *providerSuite) TestPrepareForBootstrap(c *gc.C) { 46 env, err := s.provider.PrepareForBootstrap(envtesting.BootstrapContext(c), s.Config) 47 c.Check(err, jc.ErrorIsNil) 48 c.Check(env, gc.NotNil) 49 } 50 51 func (s *providerSuite) TestValidate(c *gc.C) { 52 validCfg, err := s.provider.Validate(s.Config, nil) 53 c.Check(err, jc.ErrorIsNil) 54 55 validAttrs := validCfg.AllAttrs() 56 c.Assert(s.Config.AllAttrs(), gc.DeepEquals, validAttrs) 57 } 58 59 func (s *providerSuite) TestSecretAttrs(c *gc.C) { 60 obtainedAttrs, err := s.provider.SecretAttrs(s.Config) 61 c.Check(err, jc.ErrorIsNil) 62 63 expectedAttrs := map[string]string{"password": "password1"} 64 c.Assert(obtainedAttrs, gc.DeepEquals, expectedAttrs) 65 66 }