From 0c2bf2d2a61d488a01f96cb9a274a20ce6f1cc79 Mon Sep 17 00:00:00 2001 From: Julien Lancelot Date: Wed, 9 Mar 2016 14:00:52 +0100 Subject: [PATCH] SONAR-7427 Add IT on new "effort to reach rating A" measure --- .../java/it/debt/SqaleRatingMeasureTest.java | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/it/it-tests/src/test/java/it/debt/SqaleRatingMeasureTest.java b/it/it-tests/src/test/java/it/debt/SqaleRatingMeasureTest.java index 1e36e4ca9b0..db88173d763 100644 --- a/it/it-tests/src/test/java/it/debt/SqaleRatingMeasureTest.java +++ b/it/it-tests/src/test/java/it/debt/SqaleRatingMeasureTest.java @@ -160,6 +160,31 @@ public class SqaleRatingMeasureTest { assertThat(rating.getData()).isEqualTo("E"); } + @Test + public void effort_to_reach_maintainability_rating_a() { + orchestrator.getServer().restoreProfile(FileLocation.ofClasspath("/debt/with-many-rules.xml")); + orchestrator.getServer().provisionProject(PROJECT, PROJECT); + orchestrator.getServer().associateProjectToQualityProfile(PROJECT, "xoo", "with-many-rules"); + + orchestrator.executeBuild(SonarRunner.create(projectDir("shared/xoo-multi-modules-sample"))); + + assertThat(getMeasure(PROJECT, "sqale_rating").getData()).isEqualTo("C"); + assertThat(getMeasure(PROJECT, "effort_to_reach_maintainability_rating_a").getIntValue()).isEqualTo(292); + + assertThat(getMeasure(MODULE, "sqale_rating").getData()).isEqualTo("C"); + assertThat(getMeasure(MODULE, "effort_to_reach_maintainability_rating_a").getIntValue()).isEqualTo(150); + + assertThat(getMeasure(SUB_MODULE, "sqale_rating").getData()).isEqualTo("C"); + assertThat(getMeasure(SUB_MODULE, "effort_to_reach_maintainability_rating_a").getIntValue()).isEqualTo(77); + + assertThat(getMeasure(DIRECTORY, "sqale_rating").getData()).isEqualTo("A"); + assertThat(getMeasure(DIRECTORY, "effort_to_reach_maintainability_rating_a").getIntValue()).isEqualTo(0); + + assertThat(getMeasure(FILE, "sqale_rating").getData()).isEqualTo("A"); + // Best value is 0 => no measure + assertThat(getMeasure(FILE, "effort_to_reach_maintainability_rating_a")).isNull(); + } + private Measure getMeasure(String resource, String metricKey) { Resource res = orchestrator.getServer().getWsClient().find(ResourceQuery.createForMetrics(resource, metricKey)); if (res == null) { -- 2.39.5