diff options
Diffstat (limited to 'api4/status_test.go')
-rw-r--r-- | api4/status_test.go | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/api4/status_test.go b/api4/status_test.go new file mode 100644 index 000000000..da56ae435 --- /dev/null +++ b/api4/status_test.go @@ -0,0 +1,55 @@ +package api4 + +import ( + "testing" + + "github.com/mattermost/platform/app" +) + +func TestGetUserStatus(t *testing.T) { + th := Setup().InitBasic() + defer TearDown() + Client := th.Client + + userStatus, resp := Client.GetUserStatus(th.BasicUser.Id, "") + CheckNoError(t, resp) + if userStatus.Status != "offline" { + t.Fatal("Should return offline status") + } + + app.SetStatusOnline(th.BasicUser.Id, "", true) + userStatus, resp = Client.GetUserStatus(th.BasicUser.Id, "") + CheckNoError(t, resp) + if userStatus.Status != "online" { + t.Fatal("Should return online status") + } + + app.SetStatusAwayIfNeeded(th.BasicUser.Id, true) + userStatus, resp = Client.GetUserStatus(th.BasicUser.Id, "") + CheckNoError(t, resp) + if userStatus.Status != "away" { + t.Fatal("Should return away status") + } + + app.SetStatusOffline(th.BasicUser.Id, true) + userStatus, resp = Client.GetUserStatus(th.BasicUser.Id, "") + CheckNoError(t, resp) + if userStatus.Status != "offline" { + t.Fatal("Should return offline status") + } + + //Get user2 status logged as user1 + userStatus, resp = Client.GetUserStatus(th.BasicUser2.Id, "") + CheckNoError(t, resp) + if userStatus.Status != "offline" { + t.Fatal("Should return offline status") + } + + Client.Logout() + th.LoginBasic2() + userStatus, resp = Client.GetUserStatus(th.BasicUser2.Id, "") + CheckNoError(t, resp) + if userStatus.Status != "offline" { + t.Fatal("Should return offline status") + } +} |