github.com/niedbalski/juju@v0.0.0-20190215020005-8ff100488e47/api/backups/info_test.go (about) 1 // Copyright 2014 Canonical Ltd. 2 // Licensed under the AGPLv3, see LICENCE file for details. 3 4 package backups_test 5 6 import ( 7 jc "github.com/juju/testing/checkers" 8 gc "gopkg.in/check.v1" 9 10 "github.com/juju/juju/api/backups" 11 apiserverbackups "github.com/juju/juju/apiserver/facades/client/backups" 12 "github.com/juju/juju/apiserver/params" 13 ) 14 15 type infoSuite struct { 16 baseSuite 17 } 18 19 var _ = gc.Suite(&infoSuite{}) 20 21 func (s *infoSuite) TestInfo(c *gc.C) { 22 cleanup := backups.PatchClientFacadeCall(s.client, 23 func(req string, paramsIn interface{}, resp interface{}) error { 24 c.Check(req, gc.Equals, "Info") 25 26 c.Assert(paramsIn, gc.FitsTypeOf, params.BackupsInfoArgs{}) 27 p := paramsIn.(params.BackupsInfoArgs) 28 c.Check(p.ID, gc.Equals, "spam") 29 30 if result, ok := resp.(*params.BackupsMetadataResult); ok { 31 *result = apiserverbackups.CreateResult(s.Meta, "test-filename") 32 } else { 33 c.Fatalf("wrong output structure") 34 } 35 return nil 36 }, 37 ) 38 defer cleanup() 39 40 result, err := s.client.Info("spam") 41 c.Assert(err, jc.ErrorIsNil) 42 43 s.checkMetadataResult(c, result, s.Meta) 44 }