Search in sources :

Example 6 with ListWsResponse

use of org.sonarqube.ws.Qualitygates.ListWsResponse in project sonarqube by SonarSource.

the class ListActionTest method actions_without_quality_gate_administer_permission.

@Test
public void actions_without_quality_gate_administer_permission() {
    userSession.logIn("john").addPermission(ADMINISTER_QUALITY_PROFILES);
    QualityGateDto defaultQualityGate = db.qualityGates().insertQualityGate(qg -> qg.setName("Sonar way").setBuiltIn(true));
    QualityGateDto otherQualityGate = db.qualityGates().insertQualityGate(qg -> qg.setName("Sonar way - Without Coverage").setBuiltIn(false));
    db.qualityGates().setDefaultQualityGate(defaultQualityGate);
    ListWsResponse response = ws.newRequest().executeProtobuf(ListWsResponse.class);
    assertThat(response.getActions()).extracting(ListWsResponse.RootActions::getCreate).isEqualTo(false);
    assertThat(response.getQualitygatesList()).extracting(QualityGate::getName, qg -> qg.getActions().getRename(), qg -> qg.getActions().getDelete(), qg -> qg.getActions().getManageConditions(), qp -> qp.getActions().getCopy(), qp -> qp.getActions().getSetAsDefault(), qp -> qp.getActions().getAssociateProjects(), qp -> qp.getActions().getDelegate()).containsExactlyInAnyOrder(tuple(defaultQualityGate.getName(), false, false, false, false, false, false, false), tuple(otherQualityGate.getName(), false, false, false, false, false, false, false));
}
Also used : UserSessionRule(org.sonar.server.tester.UserSessionRule) ADMINISTER_QUALITY_GATES(org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_GATES) DbTester(org.sonar.db.DbTester) UserDto(org.sonar.db.user.UserDto) Assertions.assertThat(org.assertj.core.api.Assertions.assertThat) JsonAssert.assertJson(org.sonar.test.JsonAssert.assertJson) Test(org.junit.Test) QualityGateDto(org.sonar.db.qualitygate.QualityGateDto) WsActionTester(org.sonar.server.ws.WsActionTester) QualityGateFinder(org.sonar.server.qualitygate.QualityGateFinder) AssertionsForClassTypes.tuple(org.assertj.core.api.AssertionsForClassTypes.tuple) QualityGate(org.sonarqube.ws.Qualitygates.ListWsResponse.QualityGate) DbClient(org.sonar.db.DbClient) ADMINISTER_QUALITY_PROFILES(org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_PROFILES) Rule(org.junit.Rule) ListWsResponse(org.sonarqube.ws.Qualitygates.ListWsResponse) WebService(org.sonar.api.server.ws.WebService) Assertions.assertThatThrownBy(org.assertj.core.api.Assertions.assertThatThrownBy) TestComponentFinder(org.sonar.server.component.TestComponentFinder) ListWsResponse(org.sonarqube.ws.Qualitygates.ListWsResponse) QualityGateDto(org.sonar.db.qualitygate.QualityGateDto) Test(org.junit.Test)

Aggregations

Test (org.junit.Test)6 QualityGateDto (org.sonar.db.qualitygate.QualityGateDto)6 ListWsResponse (org.sonarqube.ws.Qualitygates.ListWsResponse)6 Assertions.assertThat (org.assertj.core.api.Assertions.assertThat)3 Assertions.assertThatThrownBy (org.assertj.core.api.Assertions.assertThatThrownBy)3 AssertionsForClassTypes.tuple (org.assertj.core.api.AssertionsForClassTypes.tuple)3 Rule (org.junit.Rule)3 WebService (org.sonar.api.server.ws.WebService)3 DbClient (org.sonar.db.DbClient)3 DbTester (org.sonar.db.DbTester)3 ADMINISTER_QUALITY_GATES (org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_GATES)3 ADMINISTER_QUALITY_PROFILES (org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_PROFILES)3 UserDto (org.sonar.db.user.UserDto)3 TestComponentFinder (org.sonar.server.component.TestComponentFinder)3 QualityGateFinder (org.sonar.server.qualitygate.QualityGateFinder)3 UserSessionRule (org.sonar.server.tester.UserSessionRule)3 WsActionTester (org.sonar.server.ws.WsActionTester)3 JsonAssert.assertJson (org.sonar.test.JsonAssert.assertJson)3 QualityGate (org.sonarqube.ws.Qualitygates.ListWsResponse.QualityGate)3