diff options
author | Vitaly Takmazov | 2018-08-27 12:20:16 +0300 |
---|---|---|
committer | Vitaly Takmazov | 2018-08-27 12:20:16 +0300 |
commit | dfe75bb13736cb477cae97a5d336f6601a11113d (patch) | |
tree | d9008f1fc0de2d617c80d18a458a30289e09c1c9 | |
parent | 926bdf95c75ac8f4abbc403b0a2c24327e405903 (diff) |
/info/{uname} API
-rw-r--r-- | juick-server/src/main/java/com/juick/server/api/Users.java | 11 | ||||
-rw-r--r-- | juick-server/src/test/java/com/juick/server/tests/ServerTests.java | 4 |
2 files changed, 15 insertions, 0 deletions
diff --git a/juick-server/src/main/java/com/juick/server/api/Users.java b/juick-server/src/main/java/com/juick/server/api/Users.java index 41deddb8..1258e43c 100644 --- a/juick-server/src/main/java/com/juick/server/api/Users.java +++ b/juick-server/src/main/java/com/juick/server/api/Users.java @@ -18,6 +18,7 @@ package com.juick.server.api; import com.juick.User; +import com.juick.server.helpers.UserInfo; import com.juick.server.util.HttpForbiddenException; import com.juick.server.util.HttpNotFoundException; import com.juick.service.MessagesService; @@ -135,6 +136,16 @@ public class Users { throw new HttpNotFoundException(); } + @ApiOperation(value = "This returns detailed user info") + @GetMapping("/info/{uname}") + public UserInfo getUserInfo(@PathVariable String uname) { + User user = userService.getUserByName(uname); + if (!user.isBanned()) { + return userService.getUserInfo(user); + } + throw new HttpNotFoundException(); + } + class SecureUser extends User { public String getHash() { return getAuthHash(); diff --git a/juick-server/src/test/java/com/juick/server/tests/ServerTests.java b/juick-server/src/test/java/com/juick/server/tests/ServerTests.java index 88cdd24c..95f459b4 100644 --- a/juick-server/src/test/java/com/juick/server/tests/ServerTests.java +++ b/juick-server/src/test/java/com/juick/server/tests/ServerTests.java @@ -1271,6 +1271,10 @@ public class ServerTests { .andExpect(status().isNotFound()); mockMvc.perform(get("/messages?uname=isilmine").with(httpBasic(ugnichName, ugnichPassword))) .andExpect(status().isNotFound()); + mockMvc.perform(get("/info/isilmine").with(httpBasic(ugnichName, ugnichPassword))) + .andExpect(status().isNotFound()); + mockMvc.perform(get("/info/ugnich").with(httpBasic(ugnichName, ugnichPassword))) + .andExpect(status().isOk()); } @Test |