github.com/juju/juju@v0.0.0-20240430160146-1752b71fcf00/api/client/backups/base_test.go (about)

     1  // Copyright 2014 Canonical Ltd.
     2  // Licensed under the AGPLv3, see LICENCE file for details.
     3  
     4  package backups
     5  
     6  import (
     7  	"time"
     8  
     9  	"github.com/juju/testing"
    10  	"go.uber.org/mock/gomock"
    11  	gc "gopkg.in/check.v1"
    12  
    13  	"github.com/juju/juju/api/base/mocks"
    14  	"github.com/juju/juju/rpc/params"
    15  	stbackups "github.com/juju/juju/state/backups"
    16  )
    17  
    18  type baseSuite struct {
    19  	testing.IsolationSuite
    20  
    21  	facade    *mocks.MockFacadeCaller
    22  	apiCaller *mocks.MockAPICallCloser
    23  }
    24  
    25  func (s *baseSuite) setupMocks(c *gc.C) *gomock.Controller {
    26  	ctrl := gomock.NewController(c)
    27  
    28  	s.facade = mocks.NewMockFacadeCaller(ctrl)
    29  	s.apiCaller = mocks.NewMockAPICallCloser(ctrl)
    30  
    31  	return ctrl
    32  }
    33  
    34  func (s *baseSuite) newClient() *Client {
    35  	return &Client{
    36  		facade: s.facade,
    37  		st:     s.apiCaller,
    38  	}
    39  }
    40  
    41  func (s *baseSuite) checkMetadataResult(c *gc.C, result *params.BackupsMetadataResult, meta *stbackups.Metadata) {
    42  	var finished, stored time.Time
    43  	if meta.Finished != nil {
    44  		finished = *meta.Finished
    45  	}
    46  	if meta.Stored() != nil {
    47  		stored = *(meta.Stored())
    48  	}
    49  
    50  	c.Check(result.ID, gc.Equals, meta.ID())
    51  	c.Check(result.Started, gc.Equals, meta.Started)
    52  	c.Check(result.Finished, gc.Equals, finished)
    53  	c.Check(result.Checksum, gc.Equals, meta.Checksum())
    54  	c.Check(result.ChecksumFormat, gc.Equals, meta.ChecksumFormat())
    55  	c.Check(result.Size, gc.Equals, meta.Size())
    56  	c.Check(result.Stored, gc.Equals, stored)
    57  	c.Check(result.Notes, gc.Equals, meta.Notes)
    58  
    59  	c.Check(result.Model, gc.Equals, meta.Origin.Model)
    60  	c.Check(result.Machine, gc.Equals, meta.Origin.Machine)
    61  	c.Check(result.Hostname, gc.Equals, meta.Origin.Hostname)
    62  	c.Check(result.Version, gc.Equals, meta.Origin.Version)
    63  }