Skip to content

Commit ab6eefc

Browse files
fix: [CI-4980]: error message fix (#36306)
* [CI-4980]: error message fix * [CI-4980]: test fix
1 parent 425393e commit ab6eefc

8 files changed

Lines changed: 135 additions & 149 deletions

File tree

440-connector-nextgen/src/test/java/io/harness/connector/validator/AwsConnectorValidatorTest.java

Lines changed: 16 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
package io.harness.connector.validator;
99

1010
import static org.assertj.core.api.Assertions.assertThat;
11+
import static org.assertj.core.api.Assertions.assertThatThrownBy;
1112
import static org.joor.Reflect.on;
1213
import static org.mockito.Matchers.any;
1314
import static org.mockito.Mockito.doNothing;
@@ -42,7 +43,8 @@
4243
import io.harness.delegate.beans.connector.awsconnector.CrossAccountAccessDTO;
4344
import io.harness.encryption.Scope;
4445
import io.harness.encryption.SecretRefData;
45-
import io.harness.errorhandling.NGErrorHelper;
46+
import io.harness.exception.WingsException;
47+
import io.harness.exception.exceptionmanager.ExceptionManager;
4648
import io.harness.rule.Owner;
4749
import io.harness.rule.OwnerRule;
4850
import io.harness.secretmanagerclient.services.api.SecretManagerClientService;
@@ -70,7 +72,7 @@ public class AwsConnectorValidatorTest extends CategoryTest {
7072
@Mock private DefaultConnectorServiceImpl connectorService;
7173
@InjectMocks private AwsConnectorValidator awsConnectorValidator;
7274
@InjectMocks private AwsNgConfigMapper ngConfigMapper;
73-
@InjectMocks private NGErrorHelper ngErrorHelper;
75+
@Mock private ExceptionManager exceptionManager;
7476
@Mock private Map<String, ConnectorValidationHandler> connectorTypeToConnectorValidationHandlerMap;
7577
@Mock private Map<String, ConnectorValidationParamsProvider> connectorValidationParamsProviderMap;
7678

@@ -199,7 +201,13 @@ public void validateTestWithoutAccessKeyOnManager() {
199201

200202
AwsValidationHandler awsValidationHandler = mock(AwsValidationHandler.class);
201203
on(awsValidationHandler).set("ngConfigMapper", ngConfigMapper);
202-
on(awsValidationHandler).set("ngErrorHelper", ngErrorHelper);
204+
on(awsValidationHandler).set("exceptionManager", exceptionManager);
205+
when(exceptionManager.processException(any(), any(), any()))
206+
.thenReturn(
207+
WingsException.builder()
208+
.message(
209+
"Connector with credential type INHERIT_FROM_DELEGATE does not support validation through harness")
210+
.build());
203211
when(awsValidationHandler.validate((ConnectorValidationParams) any(), any())).thenCallRealMethod();
204212
when(connectorTypeToConnectorValidationHandlerMap.get(Matchers.eq("Aws"))).thenReturn(awsValidationHandler);
205213

@@ -215,11 +223,10 @@ public void validateTestWithoutAccessKeyOnManager() {
215223
.orgIdentifier("orgIdentifier")
216224
.build())
217225
.build()));
218-
ConnectorValidationResult connectorValidationResult = awsConnectorValidator.validate(
219-
awsConnectorDTO, "accountIdentifier", "orgIdentifier", "projectIdentifier", "identifier");
220-
assertThat(connectorValidationResult.getStatus()).isEqualTo(ConnectivityStatus.FAILURE);
221-
assertThat(connectorValidationResult.getErrorSummary())
222-
.isEqualTo(
223-
"Error Encountered (Connector with credential type InheritFromDelegate does not support validation through harness)");
226+
assertThatThrownBy(()
227+
-> awsConnectorValidator.validate(awsConnectorDTO, "accountIdentifier", "orgIdentifier",
228+
"projectIdentifier", "identifier"))
229+
.isInstanceOf(WingsException.class)
230+
.hasMessage("Connector with credential type INHERIT_FROM_DELEGATE does not support validation through harness");
224231
}
225232
}

440-connector-nextgen/src/test/java/io/harness/connector/validator/AzureConnectorValidatorTest.java

Lines changed: 17 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
import static io.harness.annotations.dev.HarnessTeam.CDP;
1111

1212
import static org.assertj.core.api.Assertions.assertThat;
13+
import static org.assertj.core.api.Assertions.assertThatThrownBy;
1314
import static org.joor.Reflect.on;
1415
import static org.mockito.Matchers.any;
1516
import static org.mockito.Mockito.mock;
@@ -51,7 +52,8 @@
5152
import io.harness.delegate.beans.connector.azureconnector.AzureUserAssignedMSIAuthDTO;
5253
import io.harness.encryption.Scope;
5354
import io.harness.encryption.SecretRefData;
54-
import io.harness.errorhandling.NGErrorHelper;
55+
import io.harness.exception.WingsException;
56+
import io.harness.exception.exceptionmanager.ExceptionManager;
5557
import io.harness.rule.Owner;
5658
import io.harness.rule.OwnerRule;
5759
import io.harness.secretmanagerclient.services.api.SecretManagerClientService;
@@ -80,9 +82,9 @@ public class AzureConnectorValidatorTest extends CategoryTest {
8082
@Mock private DefaultConnectorServiceImpl connectorService;
8183
@InjectMocks private AzureNgConfigMapper azureNgConfigMapper;
8284
@InjectMocks private AzureConnectorValidator azureConnectorValidator;
83-
@InjectMocks private NGErrorHelper ngErrorHelper;
8485
@Mock private Map<String, ConnectorValidationHandler> connectorTypeToConnectorValidationHandlerMap;
8586
@Mock private Map<String, ConnectorValidationParamsProvider> connectorValidationParamsProviderMap;
87+
@Mock private ExceptionManager exceptionManager;
8688

8789
@Before
8890
public void setUp() throws Exception {
@@ -279,7 +281,13 @@ public void validateAzureConnectionWithoutManualCredentialsOnManager() {
279281

280282
AzureValidationHandler azureValidationHandler = mock(AzureValidationHandler.class);
281283
on(azureValidationHandler).set("azureNgConfigMapper", azureNgConfigMapper);
282-
on(azureValidationHandler).set("ngErrorHelper", ngErrorHelper);
284+
on(azureValidationHandler).set("exceptionManager", exceptionManager);
285+
when(exceptionManager.processException(any(), any(), any()))
286+
.thenReturn(
287+
WingsException.builder()
288+
.message(
289+
"Connector with credential type InheritFromDelegate does not support validation through harness")
290+
.build());
283291
when(azureValidationHandler.validate(any(), any())).thenCallRealMethod();
284292
when(connectorTypeToConnectorValidationHandlerMap.get(Matchers.eq("Azure"))).thenReturn(azureValidationHandler);
285293

@@ -295,11 +303,11 @@ public void validateAzureConnectionWithoutManualCredentialsOnManager() {
295303
.orgIdentifier("orgIdentifier")
296304
.build())
297305
.build()));
298-
ConnectorValidationResult connectorValidationResult = azureConnectorValidator.validate(
299-
azureConnectorDTO, "accountIdentifier", "orgIdentifier", "projectIdentifier", "identifier");
300-
assertThat(connectorValidationResult.getStatus()).isEqualTo(ConnectivityStatus.FAILURE);
301-
assertThat(connectorValidationResult.getErrorSummary())
302-
.isEqualTo(
303-
"Error Encountered (Connector with credential type InheritFromDelegate does not support validation through harness)");
306+
307+
assertThatThrownBy(()
308+
-> azureConnectorValidator.validate(azureConnectorDTO, "accountIdentifier", "orgIdentifier",
309+
"projectIdentifier", "identifier"))
310+
.isInstanceOf(WingsException.class)
311+
.hasMessage("Connector with credential type InheritFromDelegate does not support validation through harness");
304312
}
305313
}

440-connector-nextgen/src/test/java/io/harness/connector/validator/GcpConnectorValidatorTest.java

Lines changed: 16 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,10 @@
77

88
package io.harness.connector.validator;
99

10-
import static io.harness.connector.ConnectivityStatus.FAILURE;
1110
import static io.harness.connector.ConnectivityStatus.SUCCESS;
1211

1312
import static org.assertj.core.api.Assertions.assertThat;
13+
import static org.assertj.core.api.Assertions.assertThatThrownBy;
1414
import static org.joor.Reflect.on;
1515
import static org.mockito.Matchers.any;
1616
import static org.mockito.Mockito.mock;
@@ -39,7 +39,8 @@
3939
import io.harness.delegate.task.gcp.response.GcpValidationTaskResponse;
4040
import io.harness.encryption.Scope;
4141
import io.harness.encryption.SecretRefData;
42-
import io.harness.errorhandling.NGErrorHelper;
42+
import io.harness.exception.WingsException;
43+
import io.harness.exception.exceptionmanager.ExceptionManager;
4344
import io.harness.gcp.client.GcpClient;
4445
import io.harness.rule.Owner;
4546
import io.harness.rule.OwnerRule;
@@ -64,10 +65,10 @@ public class GcpConnectorValidatorTest extends CategoryTest {
6465
@Mock private DecryptionHelper decryptionHelper;
6566
@Mock private GcpClient gcpClient;
6667
@Mock private DefaultConnectorServiceImpl connectorService;
67-
@InjectMocks private NGErrorHelper ngErrorHelper;
6868
@InjectMocks private GcpConnectorValidator gcpConnectorValidator;
6969
@Mock private Map<String, ConnectorValidationHandler> connectorTypeToConnectorValidationHandlerMap;
7070
@Mock private Map<String, ConnectorValidationParamsProvider> connectorValidationParamsProviderMap;
71+
@Mock private ExceptionManager exceptionManager;
7172

7273
@Before
7374
public void setUp() throws Exception {
@@ -176,7 +177,13 @@ public void validateTestWithoutServiceAccountKeyOnManager() {
176177
when(ngSecretService.getEncryptionDetails(any(), any())).thenReturn(null);
177178
when(encryptionHelper.getEncryptionDetail(any(), any(), any(), any())).thenReturn(null);
178179
GcpValidationTaskHandler gcpValidationTaskHandler = mock(GcpValidationTaskHandler.class);
179-
on(gcpValidationTaskHandler).set("ngErrorHelper", ngErrorHelper);
180+
on(gcpValidationTaskHandler).set("exceptionManager", exceptionManager);
181+
when(exceptionManager.processException(any(), any(), any()))
182+
.thenReturn(
183+
WingsException.builder()
184+
.message(
185+
"Connector with credential type InheritFromDelegate does not support validation through harness")
186+
.build());
180187
when(gcpValidationTaskHandler.validate(any(), any())).thenCallRealMethod();
181188
when(connectorTypeToConnectorValidationHandlerMap.get(Matchers.eq("Gcp"))).thenReturn(gcpValidationTaskHandler);
182189

@@ -192,11 +199,10 @@ public void validateTestWithoutServiceAccountKeyOnManager() {
192199
.orgIdentifier("orgIdentifier")
193200
.build())
194201
.build()));
195-
ConnectorValidationResult connectorValidationResult = gcpConnectorValidator.validate(
196-
gcpConnectorDTO, "accountIdentifier", "orgIdentifier", "projectIdentifier", "identifier");
197-
assertThat(connectorValidationResult.getStatus()).isEqualTo(FAILURE);
198-
assertThat(connectorValidationResult.getErrorSummary())
199-
.isEqualTo(
200-
"Error Encountered (Connector with credential type InheritFromDelegate does not support validation through harness)");
202+
assertThatThrownBy(()
203+
-> gcpConnectorValidator.validate(gcpConnectorDTO, "accountIdentifier", "orgIdentifier",
204+
"projectIdentifier", "identifier"))
205+
.isInstanceOf(WingsException.class)
206+
.hasMessage("Connector with credential type InheritFromDelegate does not support validation through harness");
201207
}
202208
}

930-delegate-tasks/src/test/java/io/harness/delegate/task/aws/AwsValidationHandlerTest.java

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,8 @@
1010
import static io.harness.rule.OwnerRule.MEENAKSHI;
1111

1212
import static org.assertj.core.api.Assertions.assertThat;
13+
import static org.assertj.core.api.Assertions.assertThatThrownBy;
14+
import static org.joor.Reflect.on;
1315
import static org.mockito.Matchers.any;
1416
import static org.mockito.Mockito.doThrow;
1517

@@ -29,6 +31,8 @@
2931
import io.harness.encryption.Scope;
3032
import io.harness.encryption.SecretRefData;
3133
import io.harness.errorhandling.NGErrorHelper;
34+
import io.harness.exception.HintException;
35+
import io.harness.exception.exceptionmanager.ExceptionManager;
3236
import io.harness.rule.Owner;
3337
import io.harness.security.encryption.SecretDecryptionService;
3438

@@ -45,11 +49,13 @@ public class AwsValidationHandlerTest extends CategoryTest {
4549
@Mock private AwsClient awsClient;
4650
@Mock private AwsNgConfigMapper awsNgConfigMapper;
4751
@InjectMocks AwsValidationHandler awsValidationHandler;
52+
@InjectMocks ExceptionManager exceptionManager;
4853
private final String accountIdentifier = "accountIdentifier";
4954

5055
@Before
5156
public void setUp() throws Exception {
5257
MockitoAnnotations.initMocks(this);
58+
on(awsValidationHandler).set("exceptionManager", exceptionManager);
5359
}
5460

5561
@Test
@@ -111,7 +117,7 @@ public void testValidateFailure() {
111117
.encryptedDataDetails(null)
112118
.build();
113119

114-
ConnectorValidationResult result = awsValidationHandler.validate(connectorValidationParams, accountIdentifier);
115-
assertThat(result.getStatus()).isEqualTo(ConnectivityStatus.FAILURE);
120+
assertThatThrownBy(() -> awsValidationHandler.validate(connectorValidationParams, accountIdentifier))
121+
.isInstanceOf(HintException.class);
116122
}
117123
}

930-delegate-tasks/src/test/java/io/harness/delegate/task/gcp/taskHandlers/GcpValidationTaskHandlerTest.java

Lines changed: 6 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -8,11 +8,9 @@
88
package io.harness.delegate.task.gcp.taskHandlers;
99

1010
import static io.harness.annotations.dev.HarnessTeam.CDP;
11-
import static io.harness.connector.ConnectivityStatus.FAILURE;
1211
import static io.harness.connector.ConnectivityStatus.SUCCESS;
1312

1413
import static org.assertj.core.api.Assertions.assertThat;
15-
import static org.joor.Reflect.on;
1614
import static org.mockito.Matchers.any;
1715
import static org.mockito.Mockito.doCallRealMethod;
1816
import static org.mockito.Mockito.doThrow;
@@ -33,7 +31,6 @@
3331
import io.harness.delegate.task.gcp.GcpRequestMapper;
3432
import io.harness.delegate.task.gcp.request.GcpValidationRequest;
3533
import io.harness.encryption.SecretRefData;
36-
import io.harness.errorhandling.NGErrorHelper;
3734
import io.harness.gcp.client.GcpClient;
3835
import io.harness.rule.Owner;
3936
import io.harness.rule.OwnerRule;
@@ -54,15 +51,13 @@ public class GcpValidationTaskHandlerTest extends CategoryTest {
5451
@Mock private GcpClient gcpClient;
5552
@Mock private SecretDecryptionService secretDecryptionService;
5653
@Mock private DecryptionHelper decryptionHelper;
57-
@InjectMocks private NGErrorHelper ngErrorHelper;
5854
@Mock private GcpRequestMapper gcpRequestMapper;
5955
@InjectMocks private GcpValidationTaskHandler taskHandler;
6056
private String accountIdentifier = "accountIdentifier";
6157

6258
@Before
6359
public void setUp() throws Exception {
6460
MockitoAnnotations.initMocks(this);
65-
on(taskHandler).set("ngErrorHelper", ngErrorHelper);
6661
}
6762

6863
@Test
@@ -73,15 +68,12 @@ public void executeRequestSuccess() {
7368
assertThat(connectorValidationResult.getStatus()).isEqualTo(SUCCESS);
7469
}
7570

76-
@Test
71+
@Test(expected = RuntimeException.class)
7772
@Owner(developers = OwnerRule.YOGESH)
7873
@Category(UnitTests.class)
7974
public void executeRequestFailure() {
8075
doThrow(new RuntimeException("No Default Credentials found")).when(gcpClient).validateDefaultCredentials();
81-
final ConnectorValidationResult connectorValidationResult = taskHandler.validate(buildGcpValidationRequest());
82-
assertThat(connectorValidationResult.getStatus()).isEqualTo(FAILURE);
83-
assertThat(connectorValidationResult.getErrorSummary())
84-
.isEqualTo("Error Encountered (No Default Credentials found)");
76+
taskHandler.validate(buildGcpValidationRequest());
8577
}
8678

8779
private GcpValidationRequest buildGcpValidationRequest() {
@@ -99,17 +91,14 @@ public void executeRequestSuccessForSecretKey() {
9991
assertThat(connectorValidationResult.getStatus()).isEqualTo(SUCCESS);
10092
}
10193

102-
@Test
94+
@Test(expected = RuntimeException.class)
10395
@Owner(developers = OwnerRule.ABHINAV)
10496
@Category(UnitTests.class)
10597
public void executeRequestFailureForSecretKey() {
10698
when(decryptionHelper.decrypt(any(), any()))
10799
.thenReturn(GcpManualDetailsDTO.builder().secretKeyRef(SecretRefData.builder().build()).build());
108100
doThrow(new RuntimeException("No Credentials found")).when(gcpClient).getGkeContainerService(any());
109-
final ConnectorValidationResult connectorValidationResult =
110-
taskHandler.validate(buildGcpValidationRequestWithSecretKey());
111-
assertThat(connectorValidationResult.getStatus()).isEqualTo(FAILURE);
112-
assertThat(connectorValidationResult.getErrorSummary()).isEqualTo("Error Encountered (No Credentials found)");
101+
taskHandler.validate(buildGcpValidationRequestWithSecretKey());
113102
}
114103

115104
private GcpValidationRequest buildGcpValidationRequestWithSecretKey() {
@@ -144,7 +133,7 @@ public void validateSuccess() {
144133
assertThat(result.getStatus()).isEqualTo(SUCCESS);
145134
}
146135

147-
@Test
136+
@Test(expected = RuntimeException.class)
148137
@Owner(developers = OwnerRule.MEENAKSHI)
149138
@Category(UnitTests.class)
150139
public void validateFailure() {
@@ -164,8 +153,6 @@ public void validateFailure() {
164153
.encryptionDetails(null)
165154
.build();
166155

167-
ConnectorValidationResult result = taskHandler.validate(connectorValidationParams, accountIdentifier);
168-
assertThat(result.getStatus()).isEqualTo(FAILURE);
169-
assertThat(result.getErrorSummary()).isEqualTo("Error Encountered (No Credentials found)");
156+
taskHandler.validate(connectorValidationParams, accountIdentifier);
170157
}
171158
}

0 commit comments

Comments
 (0)