github.com/cloud-green/juju@v0.0.0-20151002100041-a00291338d3d/environs/boilerplate_config_test.go (about) 1 // Copyright 2013 Canonical Ltd. 2 // Licensed under the AGPLv3, see LICENCE file for details. 3 4 package environs_test 5 6 import ( 7 "strings" 8 9 jc "github.com/juju/testing/checkers" 10 gc "gopkg.in/check.v1" 11 12 "github.com/juju/juju/environs" 13 "github.com/juju/juju/juju/osenv" 14 _ "github.com/juju/juju/provider/ec2" 15 _ "github.com/juju/juju/provider/manual" 16 _ "github.com/juju/juju/provider/openstack" 17 ) 18 19 type BoilerplateConfigSuite struct { 20 } 21 22 var _ = gc.Suite(&BoilerplateConfigSuite{}) 23 24 func (*BoilerplateConfigSuite) TestBoilerPlateGeneration(c *gc.C) { 25 defer osenv.SetJujuHome(osenv.SetJujuHome(c.MkDir())) 26 boilerplate_text := environs.BoilerplateConfig() 27 _, err := environs.ReadEnvironsBytes([]byte(boilerplate_text)) 28 c.Assert(err, jc.ErrorIsNil) 29 } 30 31 func (*BoilerplateConfigSuite) TestBoilerPlateAliases(c *gc.C) { 32 defer osenv.SetJujuHome(osenv.SetJujuHome(c.MkDir())) 33 boilerplate_text := environs.BoilerplateConfig() 34 // There should be only one occurrence of "manual", despite 35 // there being an alias ("null"). There should be nothing for 36 // aliases. 37 n := strings.Count(boilerplate_text, "type: manual") 38 c.Assert(n, gc.Equals, 1) 39 n = strings.Count(boilerplate_text, "type: null") 40 c.Assert(n, gc.Equals, 0) 41 }