Skip to content

Commit

Permalink
Add functional test for API
Browse files Browse the repository at this point in the history
  • Loading branch information
prakashsvmx committed Apr 14, 2022
1 parent 7a57582 commit 0588033
Showing 1 changed file with 59 additions and 2 deletions.
61 changes: 59 additions & 2 deletions restapi/admin_site_replication_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -52,10 +52,10 @@ func (ac adminClientMock) deleteSiteReplicationInfo(ctx context.Context, removeR
return deleteSiteReplicationInfoMock(ctx, removeReq)
}

var getSiteReplicationStatusMock func(ctx context.Context, params madmin.SRStatusOptions) (*madmin.SRStatusInfo, error)
var getSiteReplicationStatus func(ctx context.Context, params madmin.SRStatusOptions) (*madmin.SRStatusInfo, error)

func (ac adminClientMock) getSiteReplicationStatus(ctx context.Context, params madmin.SRStatusOptions) (*madmin.SRStatusInfo, error) {
return getSiteReplicationStatusMock(ctx, params)
return getSiteReplicationStatus(ctx, params)
}

func TestGetSiteReplicationInfo(t *testing.T) {
Expand Down Expand Up @@ -249,3 +249,60 @@ func TestDeleteSiteReplicationInfo(t *testing.T) {
assert.Equal(expValueMock, srInfo, fmt.Sprintf("Failed on %s: length of lists is not the same", function))

}

func TestSiteReplicationStatus(t *testing.T) {
assert := assert.New(t)
// mock minIO client
adminClient := adminClientMock{}

function := "getSiteReplicationStatus()"
ctx, cancel := context.WithCancel(context.Background())
defer cancel()

retValueMock := madmin.SRStatusInfo{
Enabled: true,
MaxBuckets: 0,
MaxUsers: 0,
MaxGroups: 0,
MaxPolicies: 0,
Sites: nil,
StatsSummary: nil,
BucketStats: nil,
PolicyStats: nil,
UserStats: nil,
GroupStats: nil,
}

expValueMock := &madmin.SRStatusInfo{
Enabled: true,
MaxBuckets: 0,
MaxUsers: 0,
MaxGroups: 0,
MaxPolicies: 0,
Sites: nil,
StatsSummary: nil,
BucketStats: nil,
PolicyStats: nil,
UserStats: nil,
GroupStats: nil,
}

getSiteReplicationStatus = func(ctx context.Context, params madmin.SRStatusOptions) (info *madmin.SRStatusInfo, err error) {
return &retValueMock, nil
}

reqValues := madmin.SRStatusOptions{
Buckets: true,
Policies: true,
Users: true,
Groups: true,
}
srInfo, err := adminClient.getSiteReplicationStatus(ctx, reqValues)

if err != nil {
assert.Error(err)
}

assert.Equal(expValueMock, srInfo, fmt.Sprintf("Failed on %s: expected result is not same", function))

}

0 comments on commit 0588033

Please sign in to comment.