mirror of
https://github.com/mattermost/mattermost.git
synced 2026-02-20 08:21:09 -05:00
* don't use global app for api / api4 tests * put sleep back. we're gonna have to do some goroutine wrangling * fix oauth test config assumptions * jobs package, i'm comin' for you next * app test fix * try increasing sleep a little
42 lines
926 B
Go
42 lines
926 B
Go
// Copyright (c) 2016-present Mattermost, Inc. All Rights Reserved.
|
|
// See License.txt for license information.
|
|
|
|
package api
|
|
|
|
import (
|
|
"testing"
|
|
"time"
|
|
|
|
"github.com/mattermost/mattermost-server/model"
|
|
)
|
|
|
|
func TestStatusCommands(t *testing.T) {
|
|
th := Setup().InitBasic()
|
|
defer th.TearDown()
|
|
|
|
commandAndTest(t, th, "away")
|
|
commandAndTest(t, th, "offline")
|
|
commandAndTest(t, th, "online")
|
|
}
|
|
|
|
func commandAndTest(t *testing.T, th *TestHelper, status string) {
|
|
Client := th.BasicClient
|
|
channel := th.BasicChannel
|
|
user := th.BasicUser
|
|
|
|
r1 := Client.Must(Client.Command(channel.Id, "/"+status)).Data.(*model.CommandResponse)
|
|
if r1 == nil {
|
|
t.Fatal("Command failed to execute")
|
|
}
|
|
|
|
time.Sleep(1000 * time.Millisecond)
|
|
|
|
statuses := Client.Must(Client.GetStatuses()).Data.(map[string]string)
|
|
|
|
if status == "offline" {
|
|
status = ""
|
|
}
|
|
if statuses[user.Id] != status {
|
|
t.Fatal("Error setting status " + status)
|
|
}
|
|
}
|