Search in sources :

Example 6 with ProjectQgateAssociation

use of org.sonar.db.qualitygate.ProjectQgateAssociation in project sonarqube by SonarSource.

the class QualityGatesWsTest method search_with_query.

@Test
public void search_with_query() throws Exception {
    long gateId = 12345L;
    Association assoc = mock(Association.class);
    when(assoc.hasMoreResults()).thenReturn(true);
    List<ProjectQgateAssociation> projects = ImmutableList.of(new ProjectQgateAssociation().setId(42L).setName("Project One").setMember(false), new ProjectQgateAssociation().setId(24L).setName("Project Two").setMember(true));
    when(assoc.projects()).thenReturn(projects);
    when(projectFinder.find(any(ProjectQgateAssociationQuery.class))).thenReturn(assoc);
    tester.newGetRequest("api/qualitygates", "search").setParam("gateId", Long.toString(gateId)).setParam("query", "Project").execute().assertJson("{\"more\":true,\"results\":[" + "{\"id\":42,\"name\":\"Project One\",\"selected\":false}," + "{\"id\":24,\"name\":\"Project Two\",\"selected\":true}" + "]}");
    ArgumentCaptor<ProjectQgateAssociationQuery> queryCaptor = ArgumentCaptor.forClass(ProjectQgateAssociationQuery.class);
    verify(projectFinder).find(queryCaptor.capture());
    ProjectQgateAssociationQuery query = queryCaptor.getValue();
    assertThat(query.membership()).isEqualTo(ProjectQgateAssociationQuery.ANY);
}
Also used : ProjectQgateAssociation(org.sonar.db.qualitygate.ProjectQgateAssociation) Association(org.sonar.server.qualitygate.QgateProjectFinder.Association) ProjectQgateAssociation(org.sonar.db.qualitygate.ProjectQgateAssociation) ProjectQgateAssociationQuery(org.sonar.db.qualitygate.ProjectQgateAssociationQuery) Test(org.junit.Test)

Aggregations

ProjectQgateAssociation (org.sonar.db.qualitygate.ProjectQgateAssociation)6 Test (org.junit.Test)5 Association (org.sonar.server.qualitygate.QgateProjectFinder.Association)5 ComponentDto (org.sonar.db.component.ComponentDto)3 OrganizationDto (org.sonar.db.organization.OrganizationDto)3 ProjectQgateAssociationQuery (org.sonar.db.qualitygate.ProjectQgateAssociationQuery)2 JsonWriter (org.sonar.api.utils.text.JsonWriter)1 QgateProjectFinder (org.sonar.server.qualitygate.QgateProjectFinder)1