@@ -17,20 +17,31 @@ import (
1717 "testing"
1818)
1919
20- func RemainingCredits (t * testing.T ) {
21- ctx := context .Background ()
22- const exp = 5
23- const body = `{"remaining-credits": 5}`
24- tr := & respondingTransport {resp : dummyResp (201 , "GET" , body )}
25- c , err := newTestClient (tr )
26- if err != nil {
27- t .Fatalf ("unexpected error %v" , err )
28- }
29- got , err := c .DNS .RemainingCredits (ctx )
30- if err != nil {
31- t .Fatalf ("unexpected error %v" , err )
20+ func TestRemainingCredits (t * testing.T ) {
21+
22+ testCases := map [string ]struct {
23+ expected interface {}
24+ body string
25+ }{
26+ "numeric" : {5 , `{"remaining_credits": 5}` },
27+ "string" : {"unlimited" , `{"remaining_credits": "unlimited"}` },
3228 }
33- if got != exp {
34- t .Fatalf ("expected %v; got %v" , exp , got )
29+
30+ for name , tc := range testCases {
31+ t .Run (name , func (t * testing.T ) {
32+ ctx := context .Background ()
33+ tr := & respondingTransport {resp : dummyResp (201 , "GET" , tc .body )}
34+ c , err := newTestClient (tr )
35+ if err != nil {
36+ t .Fatalf ("unexpected error %v" , err )
37+ }
38+ got , err := c .DNS .RemainingCredits (ctx )
39+ if err != nil {
40+ t .Fatalf ("unexpected error %v" , err )
41+ }
42+ if got != tc .expected {
43+ t .Fatalf ("expected %v; got %v" , tc .expected , got )
44+ }
45+ })
3546 }
3647}
0 commit comments