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  }