github.com/fastly/cli@v1.7.2-0.20240304164155-9d0f1d77c3bf/pkg/commands/ip/ip_test.go (about) 1 package ip_test 2 3 import ( 4 "bytes" 5 "io" 6 "testing" 7 8 "github.com/fastly/go-fastly/v9/fastly" 9 10 "github.com/fastly/cli/pkg/app" 11 "github.com/fastly/cli/pkg/global" 12 "github.com/fastly/cli/pkg/mock" 13 "github.com/fastly/cli/pkg/testutil" 14 ) 15 16 func TestAllIPs(t *testing.T) { 17 var stdout bytes.Buffer 18 args := testutil.Args("ip-list") 19 api := mock.API{ 20 AllIPsFn: func() (v4, v6 fastly.IPAddrs, err error) { 21 return []string{ 22 "00.123.45.6/78", 23 }, []string{ 24 "0a12:3b45::/67", 25 }, nil 26 }, 27 } 28 app.Init = func(_ []string, _ io.Reader) (*global.Data, error) { 29 opts := testutil.MockGlobalData(args, &stdout) 30 opts.APIClientFactory = mock.APIClient(api) 31 return opts, nil 32 } 33 err := app.Run(args, nil) 34 testutil.AssertNoError(t, err) 35 testutil.AssertString(t, "\nIPv4\n\t00.123.45.6/78\n\nIPv6\n\t0a12:3b45::/67\n", stdout.String()) 36 }