Browse Source

Merge pull request #9817 from YevhenBondarenko/fix/tests

fixed flaky tests
pull/9841/head
Andrew Shvayka 3 years ago
committed by GitHub
parent
commit
39a5944ae8
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 6
      application/src/test/java/org/thingsboard/server/transport/coap/CoapTestCallback.java
  2. 2
      pom.xml
  3. 25
      rule-engine/rule-engine-components/src/test/java/org/thingsboard/rule/engine/rest/TbHttpClientTest.java

6
application/src/test/java/org/thingsboard/server/transport/coap/CoapTestCallback.java

@ -25,9 +25,9 @@ import org.eclipse.californium.core.coap.CoAP;
@Data @Data
public class CoapTestCallback implements CoapHandler { public class CoapTestCallback implements CoapHandler {
protected Integer observe; protected volatile Integer observe;
protected byte[] payloadBytes; protected volatile byte[] payloadBytes;
protected CoAP.ResponseCode responseCode; protected volatile CoAP.ResponseCode responseCode;
public Integer getObserve() { public Integer getObserve() {
return observe; return observe;

2
pom.xml

@ -56,7 +56,7 @@
<cassandra-all.version>3.11.14</cassandra-all.version> <cassandra-all.version>3.11.14</cassandra-all.version>
<guava.version>31.1-jre</guava.version> <guava.version>31.1-jre</guava.version>
<caffeine.version>2.6.1</caffeine.version> <caffeine.version>2.6.1</caffeine.version>
<commons-lang3.version>3.4</commons-lang3.version> <commons-lang3.version>3.12.0</commons-lang3.version>
<commons-codec.version>1.15</commons-codec.version> <commons-codec.version>1.15</commons-codec.version>
<commons-io.version>2.11.0</commons-io.version> <commons-io.version>2.11.0</commons-io.version>
<commons-logging.version>1.2</commons-logging.version> <commons-logging.version>1.2</commons-logging.version>

25
rule-engine/rule-engine-components/src/test/java/org/thingsboard/rule/engine/rest/TbHttpClientTest.java

@ -18,7 +18,6 @@ package org.thingsboard.rule.engine.rest;
import io.netty.channel.EventLoopGroup; import io.netty.channel.EventLoopGroup;
import io.netty.channel.nio.NioEventLoopGroup; import io.netty.channel.nio.NioEventLoopGroup;
import org.awaitility.Awaitility;
import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.BeforeEach;
@ -41,6 +40,7 @@ import org.thingsboard.server.common.msg.TbMsgMetaData;
import java.net.URI; import java.net.URI;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
import static org.assertj.core.api.Assertions.assertThatThrownBy; import static org.assertj.core.api.Assertions.assertThatThrownBy;
@ -169,21 +169,20 @@ public class TbHttpClientTest {
capturedData.capture() capturedData.capture()
)).thenReturn(successMsg); )).thenReturn(successMsg);
CountDownLatch latch = new CountDownLatch(1);
httpClient.processMessage(ctx, msg, httpClient.processMessage(ctx, msg,
m -> ctx.tellSuccess(msg), m -> {
ctx::tellFailure); ctx.tellSuccess(msg);
latch.countDown();
Awaitility.await() },
.atMost(30, TimeUnit.SECONDS) (m, t) -> {
.until(() -> { ctx.tellFailure(m, t);
try { latch.countDown();
verify(ctx, times(1)).tellSuccess(any());
return true;
} catch (Exception e) {
return false;
}
}); });
latch.await(5, TimeUnit.SECONDS);
verify(ctx, times(1)).tellSuccess(any()); verify(ctx, times(1)).tellSuccess(any());
verify(ctx, times(0)).tellFailure(any(), any()); verify(ctx, times(0)).tellFailure(any(), any());
Assertions.assertEquals(successResponseBody, capturedData.getValue()); Assertions.assertEquals(successResponseBody, capturedData.getValue());

Loading…
Cancel
Save