diff --git a/cmd/mstdn/cmd_toot_test.go b/cmd/mstdn/cmd_toot_test.go new file mode 100644 index 0000000..2f2f0d3 --- /dev/null +++ b/cmd/mstdn/cmd_toot_test.go @@ -0,0 +1,30 @@ +package main + +import ( + "fmt" + "net/http" + "testing" + + "github.com/urfave/cli" +) + +func TestCmdToot(t *testing.T) { + toot := "" + testWithServer( + func(w http.ResponseWriter, r *http.Request) { + if r.URL.Path != "/api/v1/statuses" { + http.Error(w, http.StatusText(http.StatusNotFound), http.StatusNotFound) + return + } + toot = r.FormValue("status") + fmt.Fprintln(w, `{"ID": 2345}`) + return + }, + func(app *cli.App) { + app.Run([]string{"mstdn", "toot", "foo"}) + }, + ) + if toot != "foo" { + t.Fatalf("want %q, got %q", "foo", toot) + } +}