github.com/niedbalski/juju@v0.0.0-20190215020005-8ff100488e47/api/uniter/charm_test.go (about) 1 // Copyright 2013 Canonical Ltd. 2 // Licensed under the AGPLv3, see LICENCE file for details. 3 4 package uniter_test 5 6 import ( 7 jc "github.com/juju/testing/checkers" 8 gc "gopkg.in/check.v1" 9 10 "github.com/juju/juju/api/uniter" 11 ) 12 13 type charmSuite struct { 14 uniterSuite 15 16 apiCharm *uniter.Charm 17 } 18 19 var _ = gc.Suite(&charmSuite{}) 20 21 func (s *charmSuite) SetUpTest(c *gc.C) { 22 s.uniterSuite.SetUpTest(c) 23 24 var err error 25 s.apiCharm, err = s.uniter.Charm(s.wordpressCharm.URL()) 26 c.Assert(err, jc.ErrorIsNil) 27 c.Assert(s.apiCharm, gc.NotNil) 28 } 29 30 func (s *charmSuite) TearDownTest(c *gc.C) { 31 s.uniterSuite.TearDownTest(c) 32 } 33 34 func (s *charmSuite) TestCharmWithNilFails(c *gc.C) { 35 _, err := s.uniter.Charm(nil) 36 c.Assert(err, gc.ErrorMatches, "charm url cannot be nil") 37 } 38 39 func (s *charmSuite) TestString(c *gc.C) { 40 c.Assert(s.apiCharm.String(), gc.Equals, s.wordpressCharm.String()) 41 } 42 43 func (s *charmSuite) TestURL(c *gc.C) { 44 c.Assert(s.apiCharm.URL(), gc.DeepEquals, s.wordpressCharm.URL()) 45 } 46 47 func (s *charmSuite) TestArchiveSha256(c *gc.C) { 48 archiveSha256, err := s.apiCharm.ArchiveSha256() 49 c.Assert(err, jc.ErrorIsNil) 50 c.Assert(archiveSha256, gc.Equals, s.wordpressCharm.BundleSha256()) 51 }