github.com/niedbalski/juju@v0.0.0-20190215020005-8ff100488e47/api/firewaller/relation_test.go (about) 1 // Copyright 2017 Canonical Ltd. 2 // Licensed under the AGPLv3, see LICENCE file for details. 3 4 package firewaller_test 5 6 import ( 7 jc "github.com/juju/testing/checkers" 8 gc "gopkg.in/check.v1" 9 "gopkg.in/juju/names.v2" 10 11 "github.com/juju/juju/api/firewaller" 12 "github.com/juju/juju/apiserver/params" 13 ) 14 15 type relationSuite struct { 16 firewallerSuite 17 18 apiRelation *firewaller.Relation 19 } 20 21 var _ = gc.Suite(&relationSuite{}) 22 23 func (s *relationSuite) SetUpTest(c *gc.C) { 24 s.firewallerSuite.SetUpTest(c) 25 26 var err error 27 s.apiRelation, err = s.firewaller.Relation(s.relations[0].Tag().(names.RelationTag)) 28 c.Assert(err, jc.ErrorIsNil) 29 } 30 31 func (s *relationSuite) TearDownTest(c *gc.C) { 32 s.firewallerSuite.TearDownTest(c) 33 } 34 35 func (s *relationSuite) TestRelation(c *gc.C) { 36 _, err := s.firewaller.Relation(names.NewRelationTag("foo:db bar:db")) 37 c.Assert(err, gc.ErrorMatches, `relation "foo:db bar:db" not found`) 38 c.Assert(err, jc.Satisfies, params.IsCodeNotFound) 39 40 apiRelation0, err := s.firewaller.Relation(s.relations[0].Tag().(names.RelationTag)) 41 c.Assert(err, jc.ErrorIsNil) 42 c.Assert(apiRelation0, gc.NotNil) 43 } 44 45 func (s *relationSuite) TestTag(c *gc.C) { 46 c.Assert(s.apiRelation.Tag(), gc.Equals, names.NewRelationTag(s.relations[0].String())) 47 } 48 49 func (s *relationSuite) TestLife(c *gc.C) { 50 c.Assert(s.apiRelation.Life(), gc.Equals, params.Alive) 51 }