add test for notification command
This commit is contained in:
parent
ea84240cce
commit
86066b9561
|
@ -17,11 +17,11 @@ func cmdNotification(c *cli.Context) error {
|
||||||
for _, n := range notifications {
|
for _, n := range notifications {
|
||||||
if n.Status != nil {
|
if n.Status != nil {
|
||||||
color.Set(color.FgHiRed)
|
color.Set(color.FgHiRed)
|
||||||
fmt.Print(n.Account.Username)
|
fmt.Fprint(c.App.Writer, n.Account.Username)
|
||||||
color.Set(color.Reset)
|
color.Set(color.Reset)
|
||||||
fmt.Println(" " + n.Type)
|
fmt.Fprintln(c.App.Writer, " "+n.Type)
|
||||||
s := n.Status
|
s := n.Status
|
||||||
fmt.Println(textContent(s.Content))
|
fmt.Fprintln(c.App.Writer, textContent(s.Content))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return nil
|
return nil
|
||||||
|
|
29
cmd/mstdn/cmd_notification_test.go
Normal file
29
cmd/mstdn/cmd_notification_test.go
Normal file
|
@ -0,0 +1,29 @@
|
||||||
|
package main
|
||||||
|
|
||||||
|
import (
|
||||||
|
"fmt"
|
||||||
|
"net/http"
|
||||||
|
"strings"
|
||||||
|
"testing"
|
||||||
|
|
||||||
|
"github.com/urfave/cli"
|
||||||
|
)
|
||||||
|
|
||||||
|
func TestCmdNotification(t *testing.T) {
|
||||||
|
out := testWithServer(
|
||||||
|
func(w http.ResponseWriter, r *http.Request) {
|
||||||
|
if r.URL.Path != "/api/v1/notifications" {
|
||||||
|
http.Error(w, http.StatusText(http.StatusNotFound), http.StatusNotFound)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
fmt.Fprintln(w, `[{"type": "rebloged", "status": {"content": "foo"}}]`)
|
||||||
|
return
|
||||||
|
},
|
||||||
|
func(app *cli.App) {
|
||||||
|
app.Run([]string{"mstdn", "notification"})
|
||||||
|
},
|
||||||
|
)
|
||||||
|
if !strings.Contains(out, "rebloged") {
|
||||||
|
t.Fatalf("%q should be contained in output of instance command: %v", "rebloged", out)
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user