github.com/makyo/juju@v0.0.0-20160425123129-2608902037e9/storage/poolmanager/defaultpool_test.go (about) 1 // Copyright 2015 Canonical Ltd. 2 // Licensed under the AGPLv3, see LICENCE file for details. 3 4 package poolmanager_test 5 6 import ( 7 jc "github.com/juju/testing/checkers" 8 gc "gopkg.in/check.v1" 9 10 jujutesting "github.com/juju/juju/juju/testing" 11 "github.com/juju/juju/state" 12 "github.com/juju/juju/storage" 13 "github.com/juju/juju/storage/poolmanager" 14 ) 15 16 type defaultStoragePoolsSuite struct { 17 jujutesting.JujuConnSuite 18 } 19 20 var _ = gc.Suite(&defaultStoragePoolsSuite{}) 21 22 func (s *defaultStoragePoolsSuite) TestDefaultStoragePools(c *gc.C) { 23 p1, err := storage.NewConfig("pool1", storage.ProviderType("loop"), map[string]interface{}{"1": "2"}) 24 p2, err := storage.NewConfig("pool2", storage.ProviderType("tmpfs"), map[string]interface{}{"3": "4"}) 25 c.Assert(err, jc.ErrorIsNil) 26 defaultPools := []*storage.Config{p1, p2} 27 poolmanager.RegisterDefaultStoragePools(defaultPools) 28 29 settings := state.NewStateSettings(s.State) 30 err = poolmanager.AddDefaultStoragePools(settings) 31 c.Assert(err, jc.ErrorIsNil) 32 pm := poolmanager.New(settings) 33 for _, pool := range defaultPools { 34 p, err := pm.Get(pool.Name()) 35 c.Assert(err, jc.ErrorIsNil) 36 c.Assert(p.Provider(), gc.Equals, pool.Provider()) 37 c.Assert(p.Attrs(), gc.DeepEquals, pool.Attrs()) 38 } 39 }