aboutsummaryrefslogtreecommitdiffstats
path: root/server
diff options
context:
space:
mode:
authorTeryk Bellahsene <teryk.bellahsene@sonarsource.com>2016-01-28 10:39:02 +0100
committerTeryk Bellahsene <teryk.bellahsene@sonarsource.com>2016-01-28 10:39:02 +0100
commit299ac619ca27b929904b8cb46ef512118bd858cb (patch)
tree10360dc50b4af94d57f4d296c908dd3829baa2a6 /server
parentab5ae3d8957fa62f39608c574d435bc2c39fdf00 (diff)
downloadsonarqube-299ac619ca27b929904b8cb46ef512118bd858cb.tar.gz
sonarqube-299ac619ca27b929904b8cb46ef512118bd858cb.zip
SONAR-7164 WS api/users/search is not sensitive to special characters
Diffstat (limited to 'server')
-rw-r--r--server/sonar-server/src/test/java/org/sonar/server/user/ws/SearchActionTest.java17
-rw-r--r--server/sonar-server/src/test/resources/org/sonar/server/user/ws/SearchActionTest/user_one.json15
2 files changed, 22 insertions, 10 deletions
diff --git a/server/sonar-server/src/test/java/org/sonar/server/user/ws/SearchActionTest.java b/server/sonar-server/src/test/java/org/sonar/server/user/ws/SearchActionTest.java
index 24689abde3d..ba954fef7f0 100644
--- a/server/sonar-server/src/test/java/org/sonar/server/user/ws/SearchActionTest.java
+++ b/server/sonar-server/src/test/java/org/sonar/server/user/ws/SearchActionTest.java
@@ -34,6 +34,7 @@ import org.sonar.db.DbClient;
import org.sonar.db.DbSession;
import org.sonar.db.DbTester;
import org.sonar.db.user.GroupDto;
+import org.sonar.db.user.UserDbTester;
import org.sonar.db.user.UserDto;
import org.sonar.db.user.UserGroupDto;
import org.sonar.server.es.EsTester;
@@ -46,6 +47,7 @@ import org.sonar.test.DbTests;
import static java.util.Collections.singletonList;
import static org.assertj.core.api.Assertions.assertThat;
+import static org.sonar.db.user.UserTesting.newUserDto;
import static org.sonar.db.user.UserTokenTesting.newUserToken;
@Category(DbTests.class)
@@ -57,6 +59,7 @@ public class SearchActionTest {
public UserSessionRule userSession = UserSessionRule.standalone();
@Rule
public DbTester db = DbTester.create(System2.INSTANCE);
+ UserDbTester userDb = new UserDbTester(db);
DbClient dbClient = db.getDbClient();
DbSession dbSession = db.getSession();
@@ -85,8 +88,18 @@ public class SearchActionTest {
@Test
public void search_with_query() throws Exception {
injectUsers(5);
-
- ws.newGetRequest("api/users", "search").setParam("q", "user-1").execute().assertJson(getClass(), "user_one.json");
+ UserDto user = userDb.insertUser(newUserDto("user-%_%-login", "user-name", "user@mail.com"));
+ esTester.putDocuments(UserIndexDefinition.INDEX, UserIndexDefinition.TYPE_USER,
+ new UserDoc()
+ .setActive(true)
+ .setEmail(user.getEmail())
+ .setLogin(user.getLogin())
+ .setName(user.getName())
+ .setCreatedAt(user.getCreatedAt())
+ .setUpdatedAt(user.getUpdatedAt())
+ .setScmAccounts(user.getScmAccountsAsList()));
+
+ ws.newGetRequest("api/users", "search").setParam("q", "user-%_%-").execute().assertJson(getClass(), "user_one.json");
}
@Test
diff --git a/server/sonar-server/src/test/resources/org/sonar/server/user/ws/SearchActionTest/user_one.json b/server/sonar-server/src/test/resources/org/sonar/server/user/ws/SearchActionTest/user_one.json
index 87f7c37c97b..a31c4ca8cea 100644
--- a/server/sonar-server/src/test/resources/org/sonar/server/user/ws/SearchActionTest/user_one.json
+++ b/server/sonar-server/src/test/resources/org/sonar/server/user/ws/SearchActionTest/user_one.json
@@ -1,16 +1,15 @@
{
+ "total": 1,
"p": 1,
"ps": 50,
- "total": 1,
"users": [
{
- "login": "user-1",
- "name": "User 1",
- "email": "user-1@mail.com",
- "scmAccounts": [
- "user-1"
- ],
- "tokensCount": 1
+ "login": "user-%_%-login",
+ "name": "user-name",
+ "email": "user@mail.com",
+ "active": true,
+ "scmAccounts": [],
+ "tokensCount": 0
}
]
}