Add ability to use 'me' in place of user id for APIv4 (#5826)
Этот коммит содержится в:
коммит произвёл
GitHub
родитель
fd6e2f3f73
Коммит
bea49cbcf3
@@ -333,6 +333,10 @@ func (c *Context) RequireUserId() *Context {
|
|||||||
return c
|
return c
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if c.Params.UserId == model.ME {
|
||||||
|
c.Params.UserId = c.Session.UserId
|
||||||
|
}
|
||||||
|
|
||||||
if len(c.Params.UserId) != 26 {
|
if len(c.Params.UserId) != 26 {
|
||||||
c.SetInvalidUrlParam("user_id")
|
c.SetInvalidUrlParam("user_id")
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -75,6 +75,23 @@ func TestCreateUser(t *testing.T) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func TestGetMe(t *testing.T) {
|
||||||
|
th := Setup().InitBasic()
|
||||||
|
defer TearDown()
|
||||||
|
Client := th.Client
|
||||||
|
|
||||||
|
ruser, resp := Client.GetMe("")
|
||||||
|
CheckNoError(t, resp)
|
||||||
|
|
||||||
|
if ruser.Id != th.BasicUser.Id {
|
||||||
|
t.Fatal("wrong user")
|
||||||
|
}
|
||||||
|
|
||||||
|
Client.Logout()
|
||||||
|
_, resp = Client.GetMe("")
|
||||||
|
CheckUnauthorizedStatus(t, resp)
|
||||||
|
}
|
||||||
|
|
||||||
func TestGetUser(t *testing.T) {
|
func TestGetUser(t *testing.T) {
|
||||||
th := Setup().InitBasic().InitSystemAdmin()
|
th := Setup().InitBasic().InitSystemAdmin()
|
||||||
defer TearDown()
|
defer TearDown()
|
||||||
|
|||||||
@@ -349,6 +349,16 @@ func (c *Client4) CreateUser(user *User) (*User, *Response) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GetMe returns the logged in user.
|
||||||
|
func (c *Client4) GetMe(etag string) (*User, *Response) {
|
||||||
|
if r, err := c.DoApiGet(c.GetUserRoute(ME), etag); err != nil {
|
||||||
|
return nil, &Response{StatusCode: r.StatusCode, Error: err}
|
||||||
|
} else {
|
||||||
|
defer closeBody(r)
|
||||||
|
return UserFromJson(r.Body), BuildResponse(r)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// GetUser returns a user based on the provided user id string.
|
// GetUser returns a user based on the provided user id string.
|
||||||
func (c *Client4) GetUser(userId, etag string) (*User, *Response) {
|
func (c *Client4) GetUser(userId, etag string) (*User, *Response) {
|
||||||
if r, err := c.DoApiGet(c.GetUserRoute(userId), etag); err != nil {
|
if r, err := c.DoApiGet(c.GetUserRoute(userId), etag); err != nil {
|
||||||
|
|||||||
@@ -17,6 +17,7 @@ import (
|
|||||||
)
|
)
|
||||||
|
|
||||||
const (
|
const (
|
||||||
|
ME = "me"
|
||||||
USER_NOTIFY_ALL = "all"
|
USER_NOTIFY_ALL = "all"
|
||||||
USER_NOTIFY_MENTION = "mention"
|
USER_NOTIFY_MENTION = "mention"
|
||||||
USER_NOTIFY_NONE = "none"
|
USER_NOTIFY_NONE = "none"
|
||||||
|
|||||||
Ссылка в новой задаче
Block a user