Search in sources :

Example 1 with IssueIndexer

use of org.sonar.server.issue.index.IssueIndexer in project sonarqube by SonarSource.

the class IssueServiceMediumTest method index.

private void index() {
    IssueIndexer r = tester.get(IssueIndexer.class);
    r.indexOnStartup(r.getIndexTypes());
}
Also used : IssueIndexer(org.sonar.server.issue.index.IssueIndexer)

Example 2 with IssueIndexer

use of org.sonar.server.issue.index.IssueIndexer in project sonarqube by SonarSource.

the class SearchActionComponentsMediumTest method indexIssues.

private void indexIssues() {
    IssueIndexer r = tester.get(IssueIndexer.class);
    r.indexOnStartup(r.getIndexTypes());
}
Also used : IssueIndexer(org.sonar.server.issue.index.IssueIndexer)

Example 3 with IssueIndexer

use of org.sonar.server.issue.index.IssueIndexer in project sonarqube by SonarSource.

the class SearchActionMediumTest method load_additional_fields.

@Test
public void load_additional_fields() throws Exception {
    db.userDao().insert(session, new UserDto().setLogin("simon").setName("Simon").setEmail("simon@email.com"));
    db.userDao().insert(session, new UserDto().setLogin("fabrice").setName("Fabrice").setEmail("fabrice@email.com"));
    ComponentDto project = insertComponent(ComponentTesting.newProjectDto(otherOrganization2, "PROJECT_ID").setKey("PROJECT_KEY").setLanguage("java"));
    ComponentDto file = insertComponent(ComponentTesting.newFileDto(project, null, "FILE_ID").setKey("FILE_KEY").setLanguage("js"));
    setProjectPermission(project, USER);
    IssueDto issue = IssueTesting.newDto(newRule(), file, project).setKee("82fd47d4-b650-4037-80bc-7b112bd4eac2").setAuthorLogin("John").setAssignee("simon");
    db.issueDao().insert(session, issue);
    session.commit();
    IssueIndexer r = tester.get(IssueIndexer.class);
    r.indexOnStartup(r.getIndexTypes());
    WsTester.Result result = wsTester.newGetRequest(CONTROLLER_ISSUES, ACTION_SEARCH).setParam("additionalFields", "_all").execute();
    result.assertJson(this.getClass(), "load_additional_fields.json");
}
Also used : WsTester(org.sonar.server.ws.WsTester) UserDto(org.sonar.db.user.UserDto) ComponentDto(org.sonar.db.component.ComponentDto) IssueDto(org.sonar.db.issue.IssueDto) IssueIndexer(org.sonar.server.issue.index.IssueIndexer) Test(org.junit.Test)

Example 4 with IssueIndexer

use of org.sonar.server.issue.index.IssueIndexer in project sonarqube by SonarSource.

the class SearchActionMediumTest method issue_with_comment_hidden.

@Test
public void issue_with_comment_hidden() throws Exception {
    db.userDao().insert(session, new UserDto().setLogin("john").setName("John").setEmail("john@email.com"));
    db.userDao().insert(session, new UserDto().setLogin("fabrice").setName("Fabrice").setEmail("fabrice@email.com"));
    ComponentDto project = insertComponent(ComponentTesting.newProjectDto(otherOrganization1, "PROJECT_ID").setKey("PROJECT_KEY"));
    setDefaultProjectPermission(project);
    ComponentDto file = insertComponent(ComponentTesting.newFileDto(project, null, "FILE_ID").setKey("FILE_KEY"));
    IssueDto issue = IssueTesting.newDto(newRule(), file, project).setKee("82fd47d4-b650-4037-80bc-7b112bd4eac2");
    db.issueDao().insert(session, issue);
    tester.get(IssueChangeDao.class).insert(session, new IssueChangeDto().setIssueKey(issue.getKey()).setKey("COMMENT-ABCD").setChangeData("*My comment*").setChangeType(IssueChangeDto.TYPE_COMMENT).setUserLogin("john").setCreatedAt(DateUtils.parseDateTime("2014-09-09T12:00:00+0000").getTime()));
    tester.get(IssueChangeDao.class).insert(session, new IssueChangeDto().setIssueKey(issue.getKey()).setKey("COMMENT-ABCE").setChangeData("Another comment").setChangeType(IssueChangeDto.TYPE_COMMENT).setUserLogin("fabrice").setCreatedAt(DateUtils.parseDateTime("2014-09-10T19:10:03+0000").getTime()));
    session.commit();
    IssueIndexer r = tester.get(IssueIndexer.class);
    r.indexOnStartup(r.getIndexTypes());
    userSessionRule.logIn("john");
    WsTester.Result result = wsTester.newGetRequest(CONTROLLER_ISSUES, ACTION_SEARCH).setParam(PARAM_HIDE_COMMENTS, "true").execute();
    result.assertJson(this.getClass(), "issue_with_comment_hidden.json");
    assertThat(result.outputAsString()).doesNotContain("fabrice");
}
Also used : IssueChangeDto(org.sonar.db.issue.IssueChangeDto) WsTester(org.sonar.server.ws.WsTester) UserDto(org.sonar.db.user.UserDto) ComponentDto(org.sonar.db.component.ComponentDto) IssueDto(org.sonar.db.issue.IssueDto) IssueIndexer(org.sonar.server.issue.index.IssueIndexer) IssueChangeDao(org.sonar.db.issue.IssueChangeDao) Test(org.junit.Test)

Example 5 with IssueIndexer

use of org.sonar.server.issue.index.IssueIndexer in project sonarqube by SonarSource.

the class SearchActionMediumTest method issue_contains_component_id_for_eclipse.

@Test
public void issue_contains_component_id_for_eclipse() throws Exception {
    ComponentDto project = insertComponent(ComponentTesting.newProjectDto(otherOrganization1, "PROJECT_ID").setKey("PROJECT_KEY"));
    setDefaultProjectPermission(project);
    ComponentDto file = insertComponent(ComponentTesting.newFileDto(project, null, "FILE_ID").setKey("FILE_KEY"));
    IssueDto issue = IssueTesting.newDto(newRule(), file, project);
    db.issueDao().insert(session, issue);
    session.commit();
    IssueIndexer r = tester.get(IssueIndexer.class);
    r.indexOnStartup(r.getIndexTypes());
    WsTester.Result result = wsTester.newGetRequest(CONTROLLER_ISSUES, ACTION_SEARCH).execute();
    assertThat(result.outputAsString()).contains("\"componentId\":" + file.getId() + ",");
}
Also used : WsTester(org.sonar.server.ws.WsTester) ComponentDto(org.sonar.db.component.ComponentDto) IssueDto(org.sonar.db.issue.IssueDto) IssueIndexer(org.sonar.server.issue.index.IssueIndexer) Test(org.junit.Test)

Aggregations

IssueIndexer (org.sonar.server.issue.index.IssueIndexer)23 Test (org.junit.Test)21 ComponentDto (org.sonar.db.component.ComponentDto)21 IssueDto (org.sonar.db.issue.IssueDto)19 WsTester (org.sonar.server.ws.WsTester)17 RuleDto (org.sonar.db.rule.RuleDto)10 UserDto (org.sonar.db.user.UserDto)7 IssueDao (org.sonar.db.issue.IssueDao)4 IssueChangeDao (org.sonar.db.issue.IssueChangeDao)2 IssueChangeDto (org.sonar.db.issue.IssueChangeDto)2 OrganizationDto (org.sonar.db.organization.OrganizationDto)1 SearchOptions (org.sonar.server.es.SearchOptions)1 IssueDoc (org.sonar.server.issue.index.IssueDoc)1 IssueIndex (org.sonar.server.issue.index.IssueIndex)1 IssueIteratorFactory (org.sonar.server.issue.index.IssueIteratorFactory)1 AuthorizationTypeSupport (org.sonar.server.permission.index.AuthorizationTypeSupport)1