Skip to content

Commit

Permalink
chore: moved tests and clean up code
Browse files Browse the repository at this point in the history
  • Loading branch information
Aerex committed Nov 14, 2023
1 parent 74869e5 commit d7b2f43
Show file tree
Hide file tree
Showing 4 changed files with 38 additions and 36 deletions.
3 changes: 1 addition & 2 deletions bluemix/configuration/core_config/bx_config.go
Original file line number Diff line number Diff line change
Expand Up @@ -770,7 +770,7 @@ func (c *bxConfig) ClearPaginationURLs() {
})
}

func (c *bxConfig) AddPaginationURL(index int, url string) error {
func (c *bxConfig) AddPaginationURL(index int, url string) {
urls := c.PaginationURLs()

urls = append(urls, models.PaginationURL{
Expand All @@ -781,7 +781,6 @@ func (c *bxConfig) AddPaginationURL(index int, url string) error {
// sort by last index for easier retrieval
sort.Sort(models.ByLastIndex(urls))
c.SetPaginationURLs(urls)
return nil
}

func (c *bxConfig) PaginationURLs() (paginationURLs []models.PaginationURL) {
Expand Down
35 changes: 34 additions & 1 deletion bluemix/configuration/core_config/bx_config_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -476,7 +476,6 @@ func TestPaginationURLs(t *testing.T) {
paginationURLs := config.PaginationURLs()
assert.Empty(t, paginationURLs)

// update session
expected := []models.PaginationURL{
{
NextURL: "https://api.example.com?token=dd3784000d9744acb2a23ad121a7bb4b",
Expand All @@ -494,6 +493,40 @@ func TestPaginationURLs(t *testing.T) {

}

func TestAddPaginationURL(t *testing.T) {
config := prepareConfigForCLI(`{}`, t)
assert := assert.New(t)
unsortedUrls := []models.PaginationURL{
{
NextURL: "/v2/example.com/stuff?limit=200",
LastIndex: 200,
},
{
NextURL: "/v2/example.com/stuff?limit=100",
LastIndex: 50,
},
{
NextURL: "/v2/example.com/stuff?limit=100",
LastIndex: 100,
},
}

for _, p := range unsortedUrls {
config.AddPaginationURL(p.LastIndex, p.NextURL)
}

// expect url to be sorted in ascending order by LastIndex
sortedUrls := config.PaginationURLs()

assert.Equal(3, len(sortedUrls))
assert.Equal(sortedUrls[0].LastIndex, unsortedUrls[1].LastIndex)
assert.Equal(sortedUrls[0].NextURL, unsortedUrls[1].NextURL)
assert.Equal(sortedUrls[1].LastIndex, unsortedUrls[2].LastIndex)
assert.Equal(sortedUrls[1].NextURL, unsortedUrls[2].NextURL)
assert.Equal(sortedUrls[2].LastIndex, unsortedUrls[0].LastIndex)
assert.Equal(sortedUrls[2].NextURL, unsortedUrls[0].NextURL)
}

func checkUsageStats(enabled bool, timeStampExist bool, config core_config.Repository, t *testing.T) {
assert.Equal(t, config.UsageStatsEnabled(), enabled)
assert.Equal(t, config.UsageStatsEnabledLastUpdate().IsZero(), !timeStampExist)
Expand Down
6 changes: 3 additions & 3 deletions bluemix/configuration/core_config/repository.go
Original file line number Diff line number Diff line change
Expand Up @@ -128,7 +128,7 @@ type Repository interface {

SetPaginationURLs(paginationURLs []models.PaginationURL)
ClearPaginationURLs()
AddPaginationURL(lastIndex int, nextURL string) error
AddPaginationURL(lastIndex int, nextURL string)
PaginationURLs() []models.PaginationURL
}

Expand Down Expand Up @@ -377,8 +377,8 @@ func (c repository) PaginationURLs() []models.PaginationURL {
return c.bxConfig.PaginationURLs()
}

func (c repository) AddPaginationURL(index int, url string) error {
return c.bxConfig.AddPaginationURL(index, url)
func (c repository) AddPaginationURL(index int, url string) {
c.bxConfig.AddPaginationURL(index, url)
}

func (c repository) SetPaginationURLs(paginationURLs []models.PaginationURL) {
Expand Down
30 changes: 0 additions & 30 deletions common/rest/request_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -179,33 +179,3 @@ func TestCachedPaginationNextURL(t *testing.T) {
})
}
}

func TestAddPaginationURL(t *testing.T) {
config := testhelpers.NewFakeCoreConfig()
assert := assert.New(t)
unsortedUrls := []models.PaginationURL{
{
NextURL: "/v2/example.com/stuff?limit=200",
LastIndex: 200,
},
{
NextURL: "/v2/example.com/stuff?limit=100",
LastIndex: 100,
},
}

var err error
for _, p := range unsortedUrls {
err = config.AddPaginationURL(p.LastIndex, p.NextURL)
assert.Nil(err)
}

// expect url to be sorted in ascending order by LastIndex
sortedUrls := config.PaginationURLs()

assert.Equal(2, len(sortedUrls))
assert.Equal(sortedUrls[0].LastIndex, unsortedUrls[1].LastIndex)
assert.Equal(sortedUrls[0].NextURL, unsortedUrls[1].NextURL)
assert.Equal(sortedUrls[1].LastIndex, unsortedUrls[0].LastIndex)
assert.Equal(sortedUrls[1].NextURL, unsortedUrls[0].NextURL)
}

0 comments on commit d7b2f43

Please sign in to comment.