Skip to content

Commit

Permalink
Improve coverage
Browse files Browse the repository at this point in the history
  • Loading branch information
sophio-japharidze-sonarsource authored and jblievremont committed Feb 7, 2025
1 parent da70f0c commit 72a4bae
Show file tree
Hide file tree
Showing 3 changed files with 29 additions and 1 deletion.
Original file line number Diff line number Diff line change
Expand Up @@ -471,7 +471,7 @@ private void parseSonarCloudConnections(Map<String, Object> connectionsMap, Map<
});
}

private SonarCloudRegion parseRegion(String region) {
SonarCloudRegion parseRegion(String region) {
try {
return SonarCloudRegion.valueOf(region);
} catch (IllegalArgumentException e) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
*/
package org.sonarsource.sonarlint.ls.backend;

import java.util.Map;
import java.util.Optional;
import java.util.UUID;
import java.util.concurrent.CompletableFuture;
Expand All @@ -45,6 +46,7 @@
import org.sonarsource.sonarlint.ls.SonarLintExtendedLanguageClient;
import org.sonarsource.sonarlint.ls.connected.ProjectBinding;
import org.sonarsource.sonarlint.ls.log.LanguageClientLogger;
import org.sonarsource.sonarlint.ls.settings.ServerConnectionSettings;

import static org.assertj.core.api.AssertionsForClassTypes.assertThat;
import static org.mockito.ArgumentMatchers.any;
Expand Down Expand Up @@ -153,4 +155,18 @@ void shouldAddIssueComment() {
assertThat(messageParamsCaptor.getValue().getMessage()).contains("Could not add a new issue comment. Look at the SonarQube for IDE output for details.");
assertThat(messageParamsCaptor.getValue().getType()).isEqualTo(MessageType.Error);
}

@Test
void shouldExtractSonarCloudConnections() {
var connectionId = "connectionId";
var connections = Map.of(connectionId,
new ServerConnectionSettings(connectionId, "https://us.sonarcloud.io/", "1235", "orgKey", false, SonarCloudRegion.US));

var result = BackendService.extractSonarCloudConnections(connections);

org.assertj.core.api.AssertionsForInterfaceTypes.assertThat(result).hasSize(1);
assertThat(result.get(0).getRegion()).isEqualTo(SonarCloudRegion.US);
assertThat(result.get(0).getConnectionId()).isEqualTo(connectionId);

}
}
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,7 @@
import org.mockito.ArgumentCaptor;
import org.sonarsource.sonarlint.core.commons.RuleKey;
import org.sonarsource.sonarlint.core.rpc.protocol.backend.analysis.DidChangeClientNodeJsPathParams;
import org.sonarsource.sonarlint.core.rpc.protocol.common.SonarCloudRegion;
import org.sonarsource.sonarlint.ls.SonarLintExtendedLanguageClient;
import org.sonarsource.sonarlint.ls.backend.BackendInitParams;
import org.sonarsource.sonarlint.ls.backend.BackendService;
Expand Down Expand Up @@ -887,6 +888,17 @@ OMNISHARP_LOAD_PROJECT_ON_DEMAND, new JsonObject(),
assertThat(analyzerProperties.get("sonar.cs.internal.solutionPath")).isNull();
}

@Test
void shouldParseRegion() {
var validRegionEU = "EU";
var validRegionUS = "US";
var invalidRegion = "invalid";

assertThat(underTest.parseRegion(validRegionEU)).isEqualTo(SonarCloudRegion.EU);
assertThat(underTest.parseRegion(validRegionUS)).isEqualTo(SonarCloudRegion.US);
assertThat(underTest.parseRegion(invalidRegion)).isEqualTo(SonarCloudRegion.EU);
}

private static Map<String, Object> fromJsonString(String json) {
return Utils.parseToMap(new Gson().fromJson(json, JsonElement.class));
}
Expand Down

0 comments on commit 72a4bae

Please sign in to comment.