github.com/mhilton/juju-juju@v0.0.0-20150901100907-a94dd2c73455/juju/mock_test.go (about) 1 package juju_test 2 3 import ( 4 "github.com/juju/errors" 5 "github.com/juju/names" 6 7 "github.com/juju/juju/api" 8 "github.com/juju/juju/network" 9 ) 10 11 type mockAPIState struct { 12 api.Connection 13 close func(api.Connection) error 14 15 addr string 16 apiHostPorts [][]network.HostPort 17 environTag string 18 } 19 20 func (s *mockAPIState) Close() error { 21 if s.close != nil { 22 return s.close(s) 23 } 24 return nil 25 } 26 27 func (s *mockAPIState) Addr() string { 28 return s.addr 29 } 30 31 func (s *mockAPIState) APIHostPorts() [][]network.HostPort { 32 return s.apiHostPorts 33 } 34 35 func (s *mockAPIState) EnvironTag() (names.EnvironTag, error) { 36 return names.ParseEnvironTag(s.environTag) 37 } 38 39 func (s *mockAPIState) ServerTag() (names.EnvironTag, error) { 40 return names.EnvironTag{}, errors.NotImplementedf("ServerTag") 41 } 42 43 func panicAPIOpen(apiInfo *api.Info, opts api.DialOpts) (api.Connection, error) { 44 panic("api.Open called unexpectedly") 45 }