Skip to content

Commit 54beb05

Browse files
Merge pull request #237 from linode/paged-response
[cleanup] remove deprecated PagedResponse types from fake_linode_test
2 parents d37c425 + 0611c45 commit 54beb05

File tree

2 files changed

+26
-30
lines changed

2 files changed

+26
-30
lines changed

.golangci.yml

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -34,8 +34,3 @@ linters:
3434
- musttag
3535
- exhaustive
3636
- nilnil
37-
38-
issues:
39-
exclude-rules:
40-
- path: cloud/linode/fake_linode_test.go
41-
text: 'SA1019: (.+).(NodeBalancersPagedResponse|NodeBalancerConfigsPagedResponse|NodeBalancerNodesPagedResponse|FirewallDevicesPagedResponse) is deprecated: (NodeBalancersPagedResponse|NodeBalancerConfigsPagedResponse|NodeBalancerNodesPagedResponse|FirewallDevicesPagedResponse) exists for historical compatibility and should not be used.'

cloud/linode/fake_linode_test.go

Lines changed: 26 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,15 @@ func (f *fakeAPI) didRequestOccur(method, path, body string) bool {
7575
return ok
7676
}
7777

78+
// paginatedResponse represents a single response from a paginated
79+
// endpoint.
80+
type paginatedResponse[T any] struct {
81+
Page int `json:"page" url:"page,omitempty"`
82+
Pages int `json:"pages" url:"pages,omitempty"`
83+
Results int `json:"results" url:"results,omitempty"`
84+
Data []T `json:"data"`
85+
}
86+
7887
func (f *fakeAPI) setupRoutes() {
7988
f.mux.HandleFunc("GET /v4/nodebalancers", func(w http.ResponseWriter, r *http.Request) {
8089
res := 0
@@ -97,13 +106,12 @@ func (f *fakeAPI) setupRoutes() {
97106
}
98107
}
99108
}
100-
resp := linodego.NodeBalancersPagedResponse{
101-
PageOptions: &linodego.PageOptions{
102-
Page: 1,
103-
Pages: 1,
104-
Results: res,
105-
},
106-
Data: data,
109+
110+
resp := paginatedResponse[linodego.NodeBalancer]{
111+
Page: 1,
112+
Pages: 1,
113+
Results: res,
114+
Data: data,
107115
}
108116
rr, _ := json.Marshal(resp)
109117
_, _ = w.Write(rr)
@@ -178,13 +186,11 @@ func (f *fakeAPI) setupRoutes() {
178186
}
179187
}
180188
}
181-
resp := linodego.NodeBalancerConfigsPagedResponse{
182-
PageOptions: &linodego.PageOptions{
183-
Page: 1,
184-
Pages: 1,
185-
Results: res,
186-
},
187-
Data: data,
189+
resp := paginatedResponse[linodego.NodeBalancerConfig]{
190+
Page: 1,
191+
Pages: 1,
192+
Results: res,
193+
Data: data,
188194
}
189195
rr, err := json.Marshal(resp)
190196
if err != nil {
@@ -208,13 +214,11 @@ func (f *fakeAPI) setupRoutes() {
208214
}
209215
}
210216

211-
resp := linodego.NodeBalancerNodesPagedResponse{
212-
PageOptions: &linodego.PageOptions{
213-
Page: 1,
214-
Pages: 1,
215-
Results: res,
216-
},
217-
Data: data,
217+
resp := paginatedResponse[linodego.NodeBalancerNode]{
218+
Page: 1,
219+
Pages: 1,
220+
Results: res,
221+
Data: data,
218222
}
219223
rr, _ := json.Marshal(resp)
220224
_, _ = w.Write(rr)
@@ -243,10 +247,7 @@ func (f *fakeAPI) setupRoutes() {
243247
for i := range firewallDevices {
244248
firewallDeviceList = append(firewallDeviceList, *firewallDevices[i])
245249
}
246-
rr, _ := json.Marshal(linodego.FirewallDevicesPagedResponse{
247-
PageOptions: &linodego.PageOptions{Page: 1, Pages: 1, Results: len(firewallDeviceList)},
248-
Data: firewallDeviceList,
249-
})
250+
rr, _ := json.Marshal(paginatedResponse[linodego.FirewallDevice]{Page: 1, Pages: 1, Results: len(firewallDeviceList), Data: firewallDeviceList})
250251
_, _ = w.Write(rr)
251252
})
252253

0 commit comments

Comments
 (0)