github.com/niedbalski/juju@v0.0.0-20190215020005-8ff100488e47/provider/oracle/storage_test.go (about) 1 // Copyright 2017 Canonical Ltd. 2 // Licensed under the AGPLv3, see LICENCE file for details. 3 4 package oracle_test 5 6 import ( 7 gitjujutesting "github.com/juju/testing" 8 gc "gopkg.in/check.v1" 9 10 "github.com/juju/juju/environs" 11 "github.com/juju/juju/provider/oracle" 12 oracletesting "github.com/juju/juju/provider/oracle/testing" 13 "github.com/juju/juju/storage" 14 "github.com/juju/juju/testing" 15 ) 16 17 type storageSuite struct { 18 gitjujutesting.IsolationSuite 19 } 20 21 var _ = gc.Suite(&storageSuite{}) 22 23 func (s *storageSuite) NewStorageProvider(c *gc.C) storage.ProviderRegistry { 24 env, err := oracle.NewOracleEnviron( 25 &oracle.EnvironProvider{}, 26 environs.OpenParams{ 27 Config: testing.ModelConfig(c), 28 }, 29 oracletesting.DefaultEnvironAPI, 30 &advancingClock, 31 ) 32 c.Assert(err, gc.IsNil) 33 c.Assert(env, gc.NotNil) 34 return env 35 } 36 37 func (s *storageSuite) TestStorageProviderTypes(c *gc.C) { 38 environ := s.NewStorageProvider(c) 39 40 types, err := environ.StorageProviderTypes() 41 c.Assert(err, gc.IsNil) 42 c.Assert(types, gc.DeepEquals, oracle.DefaultTypes) 43 } 44 45 func (s *storageSuite) TestStorageProvider(c *gc.C) { 46 environ := s.NewStorageProvider(c) 47 provider, err := environ.StorageProvider( 48 oracle.DefaultStorageProviderType) 49 c.Assert(err, gc.IsNil) 50 c.Assert(provider, gc.NotNil) 51 } 52 53 func (s *storageSuite) TestStorageProviderWithError(c *gc.C) { 54 environ := s.NewStorageProvider(c) 55 someType := storage.ProviderType("someType") 56 provider, err := environ.StorageProvider(someType) 57 c.Assert(err, gc.NotNil) 58 c.Assert(provider, gc.IsNil) 59 60 }