diff --git a/cmd/mstdn/cmd_followers_test.go b/cmd/mstdn/cmd_followers_test.go new file mode 100644 index 0000000..0a53213 --- /dev/null +++ b/cmd/mstdn/cmd_followers_test.go @@ -0,0 +1,33 @@ +package main + +import ( + "fmt" + "net/http" + "strings" + "testing" + + "github.com/urfave/cli" +) + +func TestCmdFollowers(t *testing.T) { + out := testWithServer( + func(w http.ResponseWriter, r *http.Request) { + switch r.URL.Path { + case "/api/v1/accounts/verify_credentials": + fmt.Fprintln(w, `{"id": 123}`) + return + case "/api/v1/accounts/123/followers": + fmt.Fprintln(w, `[{"id": 234, "username": "zzz"}]`) + return + } + http.Error(w, http.StatusText(http.StatusNotFound), http.StatusNotFound) + return + }, + func(app *cli.App) { + app.Run([]string{"mstdn", "followers"}) + }, + ) + if !strings.Contains(out, "zzz") { + t.Fatalf("%q should be contained in output of instance command: %v", "zzz", out) + } +}