From 8ab2853f1a272861c34e92b7f3936f171c6b1a1c Mon Sep 17 00:00:00 2001 From: Ivan Ivanov Date: Thu, 28 Nov 2024 13:07:33 +0200 Subject: [PATCH] fix: do not override service port Signed-off-by: Ivan Ivanov --- .../com/hedera/hashgraph/sdk/Endpoint.java | 4 ---- .../sdk/NodeCreateTransactionTest.java | 24 +++++++++++++------ .../sdk/NodeUpdateTransactionTest.java | 19 +++++++++++---- 3 files changed, 31 insertions(+), 16 deletions(-) diff --git a/sdk/src/main/java/com/hedera/hashgraph/sdk/Endpoint.java b/sdk/src/main/java/com/hedera/hashgraph/sdk/Endpoint.java index f9f6642c0..fc542450e 100644 --- a/sdk/src/main/java/com/hedera/hashgraph/sdk/Endpoint.java +++ b/sdk/src/main/java/com/hedera/hashgraph/sdk/Endpoint.java @@ -53,10 +53,6 @@ public Endpoint() { static Endpoint fromProtobuf(ServiceEndpoint serviceEndpoint) { var port = (int) (serviceEndpoint.getPort() & 0x00000000ffffffffL); - if (port == 0 || port == 50111) { - port = 50211; - } - return new Endpoint() .setAddress(serviceEndpoint.getIpAddressV4().toByteArray()) .setPort(port) diff --git a/sdk/src/test/java/com/hedera/hashgraph/sdk/NodeCreateTransactionTest.java b/sdk/src/test/java/com/hedera/hashgraph/sdk/NodeCreateTransactionTest.java index 3c4577b2d..239cf2d1b 100644 --- a/sdk/src/test/java/com/hedera/hashgraph/sdk/NodeCreateTransactionTest.java +++ b/sdk/src/test/java/com/hedera/hashgraph/sdk/NodeCreateTransactionTest.java @@ -123,13 +123,23 @@ void fromScheduledTransaction() { } @Test - void testSerializeDeserialize() throws Exception { - var tx = new NodeCreateTransaction().setDescription(TEST_DESCRIPTION); - var tx2 = new NodeCreateTransaction().setDescription(TEST_DESCRIPTION); - var tx2Bytes = tx2.toBytes(); - NodeCreateTransaction deserializedTx2 = (NodeCreateTransaction) Transaction.fromBytes(tx2Bytes); - assertThat(tx.getGossipCaCertificate()).isEqualTo(deserializedTx2.getGossipCaCertificate()); - assertThat(tx.getGrpcCertificateHash()).isEqualTo(deserializedTx2.getGrpcCertificateHash()); + void testUnrecognizedServicePort() throws Exception { + var tx = new NodeCreateTransaction() + .setServiceEndpoints( + List.of(new Endpoint() + .setAddress(new byte[] {0x00, 0x01, 0x02, 0x03}) + .setDomainName("unit.test.com") + .setPort(50111))); + var tx2Bytes = tx.toBytes(); + NodeCreateTransaction deserializedTx = (NodeCreateTransaction) Transaction.fromBytes(tx2Bytes); + assertThat(tx.getServiceEndpoints()).isEqualTo(deserializedTx.getServiceEndpoints()); + } + + @Test + void testNullOptionalValues() throws Exception { + var tx = new NodeCreateTransaction(); + var tx2 = NodeCreateTransaction.fromBytes(tx.toBytes()); + assertThat(tx2.toString()).isEqualTo(tx.toString()); } @Test diff --git a/sdk/src/test/java/com/hedera/hashgraph/sdk/NodeUpdateTransactionTest.java b/sdk/src/test/java/com/hedera/hashgraph/sdk/NodeUpdateTransactionTest.java index f56474b57..1796cc456 100644 --- a/sdk/src/test/java/com/hedera/hashgraph/sdk/NodeUpdateTransactionTest.java +++ b/sdk/src/test/java/com/hedera/hashgraph/sdk/NodeUpdateTransactionTest.java @@ -120,11 +120,20 @@ void shouldBytes() throws Exception { @Test void testNullOptionalValues() throws Exception { var tx = new NodeUpdateTransaction(); - var tx2Bytes = tx.toBytes(); - NodeUpdateTransaction deserializedTx = (NodeUpdateTransaction) Transaction.fromBytes(tx2Bytes); - assertThat(deserializedTx.getGossipCaCertificate()).isNull(); - assertThat(deserializedTx.getGrpcCertificateHash()).isNull(); - assertThat(deserializedTx.getDescription()).isNull(); + var tx2 = NodeUpdateTransaction.fromBytes(tx.toBytes()); + assertThat(tx2.toString()).isEqualTo(tx.toString()); + } + + @Test + void testUnrecognizedServicePort() throws Exception { + var tx = new NodeUpdateTransaction() + .setServiceEndpoints( + List.of(new Endpoint() + .setAddress(new byte[] {0x00, 0x01, 0x02, 0x03}) + .setDomainName("unit.test.com") + .setPort(50111))); + var tx2 = NodeUpdateTransaction.fromBytes(tx.toBytes()); + assertThat(tx2.toString()).isEqualTo(tx.toString()); } @Test