diff --git a/src/main/java/zowe/client/sdk/core/SshConnection.java b/src/main/java/zowe/client/sdk/core/SshConnection.java
index 082141461..bae7590c8 100644
--- a/src/main/java/zowe/client/sdk/core/SshConnection.java
+++ b/src/main/java/zowe/client/sdk/core/SshConnection.java
@@ -102,7 +102,7 @@ public String toString() {
"host='" + host + '\'' +
", port='" + port + '\'' +
", user='" + user + '\'' +
- ", password='*****'" + '\'' +
+ ", password='*****'" +
'}';
}
diff --git a/src/main/java/zowe/client/sdk/core/ZosConnection.java b/src/main/java/zowe/client/sdk/core/ZosConnection.java
index 8c6dfdd86..dd9fa4363 100644
--- a/src/main/java/zowe/client/sdk/core/ZosConnection.java
+++ b/src/main/java/zowe/client/sdk/core/ZosConnection.java
@@ -113,10 +113,12 @@ public String getUser() {
/**
* Set user value
+ *
+ * This method's access level is private-package
*
* @param user string value
*/
- public void setUser(String user) {
+ void setUser(String user) {
this.user = user;
}
@@ -208,7 +210,18 @@ void setCertPassword(String certPassword) {
* @param basePath string value
*/
void setBasePath(String basePath) {
- this.basePath = basePath;
+ if (basePath == null || basePath.isBlank())
+ this.basePath = basePath;
+ else {
+ this.basePath = getNormalizedPath(basePath);
+ }
+ }
+
+ private String getNormalizedPath(String basePath) {
+ String normalizedPath = basePath.replace('\\', '/');
+ normalizedPath = normalizedPath.startsWith("/") ? normalizedPath : "/" + normalizedPath;
+ return normalizedPath.endsWith("/") ?
+ normalizedPath.substring(0, normalizedPath.length() - 1) : normalizedPath;
}
/**
@@ -308,10 +321,10 @@ public String toString() {
", zosmfPort='" + zosmfPort + '\'' +
", authType=" + authType +
", user='" + user + '\'' +
- ", password='*****'" + '\'' +
- ", token=" + token +
+ ", password='*****'" +
+ ", token=='*****'" +
", certFilePath='" + certFilePath + '\'' +
- ", certPassword='" + certPassword + '\'' +
+ ", certPassword=='*****'" +
", basePath='" + basePath + '\'' +
'}';
}
diff --git a/src/test/java/zowe/client/sdk/core/ZosConnectionFactoryTest.java b/src/test/java/zowe/client/sdk/core/ZosConnectionFactoryTest.java
index e835553d0..dfcf75739 100644
--- a/src/test/java/zowe/client/sdk/core/ZosConnectionFactoryTest.java
+++ b/src/test/java/zowe/client/sdk/core/ZosConnectionFactoryTest.java
@@ -204,9 +204,18 @@ public void tstZosConnectionFactoryBasePathHashCodeMapWithSamePathsSuccess() {
"test", "zosmfPort", "user", "password", "/custom/path");
final ZosConnection zc2 = ZosConnectionFactory.createBasicConnection(
"test", "zosmfPort", "user", "password", "/custom/path");
+ final ZosConnection zc3 = ZosConnectionFactory.createBasicConnection(
+ "test", "zosmfPort", "user", "password", "custom/path/");
+ final ZosConnection zc4 = ZosConnectionFactory.createBasicConnection(
+ "test", "zosmfPort", "user", "password", "custom/path");
+ final ZosConnection zc5 = ZosConnectionFactory.createBasicConnection(
+ "test", "zosmfPort", "user", "password", "\\custom\\path");
final var zcs = new HashMap();
zcs.put(zc1, 1);
zcs.put(zc2, 2);
+ zcs.put(zc3, 3);
+ zcs.put(zc4, 4);
+ zcs.put(zc5, 5);
assertEquals(1, zcs.size());
}
diff --git a/src/test/java/zowe/client/sdk/rest/ZoweRequestTest.java b/src/test/java/zowe/client/sdk/rest/ZoweRequestTest.java
index 14ea2dd29..629d1d637 100644
--- a/src/test/java/zowe/client/sdk/rest/ZoweRequestTest.java
+++ b/src/test/java/zowe/client/sdk/rest/ZoweRequestTest.java
@@ -220,10 +220,10 @@ public void tstUrlConstructionWithoutBasePathSuccess() {
}
@Test
- public void tstUrlConstructionWithInvalidBasePathFailure() {
+ public void tstUrlConstructionWithInvalidHostNameFailure() {
// Create a connection and set an empty base path
final ZosConnection connection = ZosConnectionFactory
- .createBasicConnection("test.host", "443", "user", "password", "frank//");
+ .createBasicConnection("test.host:123foo", "443", "user", "password", "frank///");
// Create a mock request to verify URL
final ZosmfRequest request = ZosmfRequestFactory.buildRequest(connection, ZosmfRequestType.GET_JSON);
diff --git a/src/test/java/zowe/client/sdk/zosconsole/method/ConsoleCmdTest.java b/src/test/java/zowe/client/sdk/zosconsole/method/ConsoleCmdTest.java
index e61be6730..51918142b 100644
--- a/src/test/java/zowe/client/sdk/zosconsole/method/ConsoleCmdTest.java
+++ b/src/test/java/zowe/client/sdk/zosconsole/method/ConsoleCmdTest.java
@@ -90,16 +90,6 @@ public void tstIssueConsoleIssueCommandCmdResponseToggleTokenSuccess() throws Zo
assertEquals("student", response.getCmdResponse());
}
- @Test
- public void tstIssueConsoleIssueCommandCmdResponseWithInvalidBasePathFailure() {
- final ZosConnection connection = ZosConnectionFactory
- .createBasicConnection("1", "1", "1", "1", "consoles//");
- // Create a mock request to verify URL
- final ZosmfRequest request = ZosmfRequestFactory.buildRequest(connection, ZosmfRequestType.PUT_JSON);
- final ConsoleCmd issueCommand = new ConsoleCmd(connection, request);
- assertThrows(IllegalArgumentException.class, () -> issueCommand.issueCommand("command"));
- }
-
@Test
public void tstIssueConsoleIssueCommandCmdResponseWithEmptyStringSuccess() throws ZosmfRequestException {
final Map jsonMap = new HashMap<>();
diff --git a/src/test/java/zowe/client/sdk/zosjobs/methods/JobGetJsonTest.java b/src/test/java/zowe/client/sdk/zosjobs/methods/JobGetJsonTest.java
index 3aa7e1309..4db4bf522 100644
--- a/src/test/java/zowe/client/sdk/zosjobs/methods/JobGetJsonTest.java
+++ b/src/test/java/zowe/client/sdk/zosjobs/methods/JobGetJsonTest.java
@@ -296,16 +296,6 @@ public void tstJobGetJsonStatusWithStepDataFlagTrue() throws ZosmfRequestExcepti
assertEquals("BLSQPRMI", job.getStepData()[0].getProgramName());
}
- @Test
- public void tstJobGetJsonByIdCmdResponseWithInvalidBasePathFailure() {
- final ZosConnection connection = ZosConnectionFactory
- .createBasicConnection("1", "1", "1", "1", "consoles//");
- // Create a mock request to verify URL
- final ZosmfRequest request = ZosmfRequestFactory.buildRequest(connection, ZosmfRequestType.GET_JSON);
- final JobGet getJobs = new JobGet(connection, request);
- assertThrows(IllegalArgumentException.class, () -> getJobs.getById("1"));
- }
-
@Test
public void tstJobGetJsonSpoolContentByIdJobIdNullExceptionFailure() throws ZosmfRequestException {
String errorMsg = "";
diff --git a/src/test/java/zowe/client/sdk/zosjobs/methods/JobGetTextTest.java b/src/test/java/zowe/client/sdk/zosjobs/methods/JobGetTextTest.java
index 3e47f7e63..50e29a7ed 100644
--- a/src/test/java/zowe/client/sdk/zosjobs/methods/JobGetTextTest.java
+++ b/src/test/java/zowe/client/sdk/zosjobs/methods/JobGetTextTest.java
@@ -61,16 +61,6 @@ public void tstJobGetTextSpoolContentByIdSuccess() throws ZosmfRequestException
assertEquals("1\n2\n3\n", results);
}
- @Test
- public void tstJobGetTextSpoolContentCmdResponseWithInvalidBasePathFailure() {
- final ZosConnection connection = ZosConnectionFactory
- .createBasicConnection("1", "1", "1", "1", "consoles//");
- // Create a mock request to verify URL
- final ZosmfRequest request = ZosmfRequestFactory.buildRequest(connection, ZosmfRequestType.GET_TEXT);
- final JobGet getJobs = new JobGet(connection, request);
- assertThrows(IllegalArgumentException.class, () -> getJobs.getSpoolContent("jobName", "jobId", 1L));
- }
-
@Test
public void tstJobGetTextSpoolContentByIdToggleTokenSuccess() throws ZosmfRequestException {
JobGet getJobs = new JobGet(tokenConnection);