Skip to content

Commit

Permalink
Add tests and implement method for formatting Java version
Browse files Browse the repository at this point in the history
  • Loading branch information
rmoreliovlabs committed Aug 12, 2024
1 parent cd0251e commit a2caf4a
Show file tree
Hide file tree
Showing 3 changed files with 33 additions and 4 deletions.
7 changes: 3 additions & 4 deletions rskj-core/src/main/java/org/ethereum/rpc/Web3Impl.java
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,7 @@
import org.ethereum.rpc.exception.RskJsonRpcRequestException;
import org.ethereum.rpc.parameters.*;
import org.ethereum.util.BuildInfo;
import org.ethereum.util.Utils;
import org.ethereum.vm.DataWord;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
Expand Down Expand Up @@ -195,12 +196,10 @@ public void stop() {

@Override
public String web3_clientVersion() {
String javaVersion = System.getProperty("java.version");
String javaMajorVersion = javaVersion.startsWith("1.") ? javaVersion.split("\\.")[1] : javaVersion.split("\\.")[0];
String formattedJavaVersion = "Java" + javaMajorVersion;
String javaVersion = Utils.getFormattedJavaVersion();

String clientVersion = CLIENT_VERSION_PREFIX + "/" + config.projectVersion() + "/" +
System.getProperty("os.name") + "/" + formattedJavaVersion + "/" +
System.getProperty("os.name") + "/" + javaVersion + "/" +
config.projectVersionModifier() + "-" + buildInfo.getBuildHash();

if (logger.isDebugEnabled()) {
Expand Down
8 changes: 8 additions & 0 deletions rskj-core/src/main/java/org/ethereum/util/Utils.java
Original file line number Diff line number Diff line change
Expand Up @@ -254,4 +254,12 @@ public static int significantBitCount(int number) {
}
return result;
}

public static String getFormattedJavaVersion(){
String javaVersion = System.getProperty("java.specification.version");
String javaMajorVersion = javaVersion.replace("1.", "");
String formattedJavaVersion = String.format("Java%s", javaMajorVersion );

return formattedJavaVersion;
}
}
22 changes: 22 additions & 0 deletions rskj-core/src/test/java/org/ethereum/rpc/Web3ImplTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -140,6 +140,28 @@ void web3_clientVersion() {
assertTrue(clientVersion.toLowerCase().contains("rsk"), "client version is not including rsk!");
}

@Test
void web3_clientVersion_ShouldIncludeJava8() {
System.setProperty("java.specification.version", "1.8");

Web3 web3 = createWeb3();

String clientVersion = web3.web3_clientVersion();

assertTrue(clientVersion.contains("Java8"), "Java version is not Java8");
}

@Test
void web3_clientVersion_ShouldIncludeJava17() {
System.setProperty("java.specification.version", "17");

Web3 web3 = createWeb3();

String clientVersion = web3.web3_clientVersion();

assertTrue(clientVersion.contains("Java17"), "Java version is not Java17");
}

@Test
void net_version() {
Web3Impl web3 = createWeb3();
Expand Down

0 comments on commit a2caf4a

Please # to comment.