From 657f3e6c2ccb415daaa925e5f0540b7e19e4079e Mon Sep 17 00:00:00 2001 From: Jean-Pierre Rupp Date: Mon, 13 Jun 2016 00:54:40 +0100 Subject: [PATCH 1/3] Fix test suite --- .travis.yml | 15 ++++++--------- thunder-core/pom.xml | 10 ---------- .../thunder/core/database/InMemoryDBHandler.java | 7 ++++++- .../layers/low/AckProcessorImplTest.kt | 6 +++--- 4 files changed, 15 insertions(+), 23 deletions(-) diff --git a/.travis.yml b/.travis.yml index 2d9e4d34..bb3ace74 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,14 +1,11 @@ language: java + jdk: -- oraclejdk8 -before-install: -- echo before-install -- pip install --user codecov -install: true -script: - - mvn clean install + - oraclejdk8 + notifications: slack: secure: "H6eYpuLQatCsKXkgQisjVAx33BiZbA9FZ6KVrdYttjEpaNCH7yZu1/4jcWsLbjwyWi6xbbUYMIYtrjkXbgavFVlhiJ5yAD1KpeVdtMytW1W67oCXGGbG5keHVAXkzxExAQdHzSaoLhERdh0i+STePZu4SuK/ZzmGlfVNZ+pr1EuTdJJ/3Qz1D8nR7Xa+DIW+KZGu4iSRqwQwanl/shhyKZWRkqAB/GTJbeGVMB6Fyogi5xI/YXzFovQaqIcF0zcag0Sv7ja8XiCIlAahkYCAT82wdfM5Fg9VHjVAnUnsFhoADRS2OWr4684rZxBy/lox7RugKRQMUS4J3f2vT9MHN3hvGyfkCAsDxZ/c8lMZIPqv3pUtc4G0S73oTOzslLbGxsZT01nprVg6ZPSYHdpl7/TOfd+71Fr5sd2PnZZH7qGFWkmbDzYuMoGXwML7TV7II84sB9qhq4F8zTNrGdSxsCx1Xcb1nq+pRest7tN3wuRkP6rwIub9jClea4XJb8jOZZ+q5eTT8eBmEkUJGsrMgn2Ynz3he3CbXFVJfoCLfuvxjtTrDNIaZEaQDnkP6iN+wMF2b1JEBOQI+hStNE7/PNQTe+12FL5vrW1r9ocGyeps92xBopohS3Pd0rcgfKKRhm3EHUI2/1WBXlPQLY5ImLLfNYhNKho8mGbuS1DbysQ=" -after_sucess: -- codecov \ No newline at end of file + +after_success: + - bash <(curl -s https://codecov.io/bash) \ No newline at end of file diff --git a/thunder-core/pom.xml b/thunder-core/pom.xml index 8e6e4b2a..80ceb5b7 100644 --- a/thunder-core/pom.xml +++ b/thunder-core/pom.xml @@ -70,11 +70,6 @@ compile - - - src/main/java - - test-compile @@ -82,11 +77,6 @@ test-compile - - - src/test/java - - diff --git a/thunder-core/src/main/java/network/thunder/core/database/InMemoryDBHandler.java b/thunder-core/src/main/java/network/thunder/core/database/InMemoryDBHandler.java index 13f47871..8785e0d7 100644 --- a/thunder-core/src/main/java/network/thunder/core/database/InMemoryDBHandler.java +++ b/thunder-core/src/main/java/network/thunder/core/database/InMemoryDBHandler.java @@ -407,7 +407,12 @@ public List lockPaymentsToBeRedeemed (NodeKey nodeKey) { } @NotNull - private static List getPaymentDatas (NodeKey nodeKey, List payments, boolean sender, PaymentStatus searchFor, PaymentStatus + private static List getPaymentDatas ( + NodeKey nodeKey, + List payments, + boolean sender, + PaymentStatus searchFor, + PaymentStatus replaceWith) { List paymentList = new ArrayList<>(); for (PaymentWrapper p : payments) { diff --git a/thunder-core/src/test/java/network/thunder/core/communication/layers/low/AckProcessorImplTest.kt b/thunder-core/src/test/java/network/thunder/core/communication/layers/low/AckProcessorImplTest.kt index b0e72aef..92a9f154 100644 --- a/thunder-core/src/test/java/network/thunder/core/communication/layers/low/AckProcessorImplTest.kt +++ b/thunder-core/src/test/java/network/thunder/core/communication/layers/low/AckProcessorImplTest.kt @@ -64,7 +64,7 @@ class AckProcessorImplTest { fun shouldResendAllMessageAfterTimeout() { dbHandler1.saveMessage(node2.nodeKey, AckableMessageMock(1), DIRECTION.SENT) dbHandler1.saveMessage(node2.nodeKey, AckableMessageMock(2), DIRECTION.SENT) - Thread.sleep((Constants.MESSAGE_RESEND_TIME * 1.5).toLong()) + Thread.sleep((Constants.MESSAGE_RESEND_TIME * 2).toLong()) assertEquals(1L, (channel1.readOutbound() as AckableMessage).getMessageNumber()); assertEquals(2L, (channel1.readOutbound() as AckableMessage).getMessageNumber()); } @@ -76,7 +76,7 @@ class AckProcessorImplTest { channel1.writeInbound(AckMessageImpl(1)) println(1) println(" aa " + Constants.MESSAGE_RESEND_TIME) - Thread.sleep((Constants.MESSAGE_RESEND_TIME * 1.1).toLong()) + Thread.sleep((Constants.MESSAGE_RESEND_TIME * 2).toLong()) println(2) assertEquals(2L, (channel1.readOutbound() as AckableMessage).getMessageNumber()); assertNull(channel1.readOutbound()) @@ -88,7 +88,7 @@ class AckProcessorImplTest { dbHandler1.saveMessage(node2.nodeKey, AckableMessageMock(2), DIRECTION.SENT) channel1.writeInbound(AckMessageImpl(1)) channel1.writeInbound(AckMessageImpl(2)) - Thread.sleep((Constants.MESSAGE_RESEND_TIME * 1.5).toLong()) + Thread.sleep((Constants.MESSAGE_RESEND_TIME * 2).toLong()) assertNull(channel1.readOutbound()) } From b1a44a27d69e3914ab0b22a00368a26b7bd140d6 Mon Sep 17 00:00:00 2001 From: Jean-Pierre Rupp Date: Fri, 17 Jun 2016 15:08:27 +0100 Subject: [PATCH 2/3] Sleep to avoid null errors --- .../core/communication/layers/high/LNPaymentHandlerTest.java | 4 ++++ .../core/communication/layers/low/AckProcessorImplTest.kt | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/thunder-core/src/test/java/network/thunder/core/communication/layers/high/LNPaymentHandlerTest.java b/thunder-core/src/test/java/network/thunder/core/communication/layers/high/LNPaymentHandlerTest.java index 4cf58575..ec47ca03 100644 --- a/thunder-core/src/test/java/network/thunder/core/communication/layers/high/LNPaymentHandlerTest.java +++ b/thunder-core/src/test/java/network/thunder/core/communication/layers/high/LNPaymentHandlerTest.java @@ -100,6 +100,7 @@ public void fullExchange () throws NoSuchProviderException, NoSuchAlgorithmExcep dbHandler2.addPaymentSecret(paymentData.secret); paymentHelper1.makePayment(paymentData); + Thread.sleep(100); TestTools.exchangeMessages(channel12, channel21, LNPaymentAMessage.class); TestTools.exchangeMessages(channel21, channel12, LNPaymentBMessage.class); TestTools.exchangeMessages(channel12, channel21, LNPaymentCMessage.class); @@ -127,6 +128,7 @@ public void fullExchange () throws NoSuchProviderException, NoSuchAlgorithmExcep @Test public void fullExchangeWithAnotherPaymentMidway () throws NoSuchProviderException, NoSuchAlgorithmException, InterruptedException { paymentHelper1.makePayment(getMockPaymentData(serverObject1.pubKeyServer, serverObject2.pubKeyServer)); + Thread.sleep(100); TestTools.exchangeMessages(channel12, channel21, LNPaymentAMessage.class); TestTools.exchangeMessages(channel21, channel12, LNPaymentBMessage.class); @@ -149,6 +151,7 @@ public void fullExchangeConflict () throws NoSuchProviderException, NoSuchAlgori dbHandler1.addPaymentSecret(payment2.secret); dbHandler2.addPaymentSecret(payment1.secret); + Thread.sleep(100); LNPaymentAMessage messageA1 = (LNPaymentAMessage) channel12.readOutbound(); LNPaymentAMessage messageA2 = (LNPaymentAMessage) channel21.readOutbound(); @@ -179,6 +182,7 @@ public void fullExchangeConflict () throws NoSuchProviderException, NoSuchAlgori public void sendWrongMessageShouldDisconnect () throws NoSuchProviderException, NoSuchAlgorithmException, InterruptedException { paymentHelper1.makePayment(getMockPaymentData(serverObject1.pubKeyServer, serverObject2.pubKeyServer)); + Thread.sleep(100); LNPaymentAMessage messageA = (LNPaymentAMessage) channel12.readOutbound(); channel21.writeInbound(messageA); LNPaymentBMessage messageB = (LNPaymentBMessage) channel21.readOutbound(); diff --git a/thunder-core/src/test/java/network/thunder/core/communication/layers/low/AckProcessorImplTest.kt b/thunder-core/src/test/java/network/thunder/core/communication/layers/low/AckProcessorImplTest.kt index 92a9f154..83086156 100644 --- a/thunder-core/src/test/java/network/thunder/core/communication/layers/low/AckProcessorImplTest.kt +++ b/thunder-core/src/test/java/network/thunder/core/communication/layers/low/AckProcessorImplTest.kt @@ -76,7 +76,7 @@ class AckProcessorImplTest { channel1.writeInbound(AckMessageImpl(1)) println(1) println(" aa " + Constants.MESSAGE_RESEND_TIME) - Thread.sleep((Constants.MESSAGE_RESEND_TIME * 2).toLong()) + Thread.sleep((Constants.MESSAGE_RESEND_TIME * 2.5).toLong()) println(2) assertEquals(2L, (channel1.readOutbound() as AckableMessage).getMessageNumber()); assertNull(channel1.readOutbound()) From 28d977acb29285c22960e197ea44fa0f04785120 Mon Sep 17 00:00:00 2001 From: Jean-Pierre Rupp Date: Fri, 17 Jun 2016 15:24:07 +0100 Subject: [PATCH 3/3] Shorter sleep to prevent second message passing --- .../core/communication/layers/low/AckProcessorImplTest.kt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/thunder-core/src/test/java/network/thunder/core/communication/layers/low/AckProcessorImplTest.kt b/thunder-core/src/test/java/network/thunder/core/communication/layers/low/AckProcessorImplTest.kt index 83086156..807bdec6 100644 --- a/thunder-core/src/test/java/network/thunder/core/communication/layers/low/AckProcessorImplTest.kt +++ b/thunder-core/src/test/java/network/thunder/core/communication/layers/low/AckProcessorImplTest.kt @@ -76,7 +76,7 @@ class AckProcessorImplTest { channel1.writeInbound(AckMessageImpl(1)) println(1) println(" aa " + Constants.MESSAGE_RESEND_TIME) - Thread.sleep((Constants.MESSAGE_RESEND_TIME * 2.5).toLong()) + Thread.sleep((Constants.MESSAGE_RESEND_TIME * 1.5).toLong()) println(2) assertEquals(2L, (channel1.readOutbound() as AckableMessage).getMessageNumber()); assertNull(channel1.readOutbound()) @@ -88,7 +88,7 @@ class AckProcessorImplTest { dbHandler1.saveMessage(node2.nodeKey, AckableMessageMock(2), DIRECTION.SENT) channel1.writeInbound(AckMessageImpl(1)) channel1.writeInbound(AckMessageImpl(2)) - Thread.sleep((Constants.MESSAGE_RESEND_TIME * 2).toLong()) + Thread.sleep((Constants.MESSAGE_RESEND_TIME * 1.5).toLong()) assertNull(channel1.readOutbound()) }