From 63401c5f1b964ec739046e48c48bdc6c295c687d Mon Sep 17 00:00:00 2001 From: Sergey Matvienko Date: Thu, 5 Mar 2026 19:30:28 +0100 Subject: [PATCH] Fix flaky AuditLogControllerTest#testAuditLogsSysAdmin by using Awaitility Audit logs are saved asynchronously via executor.submit() in AuditLogServiceImpl, so querying immediately after tenant profile creation could miss logs not yet persisted. Replace direct assertEquals with Awaitility.await().atMost(10s).untilAsserted() to tolerate the async save delay. Co-Authored-By: Claude Sonnet 4.6 --- .../server/controller/AuditLogControllerTest.java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/application/src/test/java/org/thingsboard/server/controller/AuditLogControllerTest.java b/application/src/test/java/org/thingsboard/server/controller/AuditLogControllerTest.java index af5df3d733..728dc1ec0e 100644 --- a/application/src/test/java/org/thingsboard/server/controller/AuditLogControllerTest.java +++ b/application/src/test/java/org/thingsboard/server/controller/AuditLogControllerTest.java @@ -19,6 +19,7 @@ import com.datastax.oss.driver.api.core.uuid.Uuids; import com.fasterxml.jackson.core.type.TypeReference; import lombok.Getter; import lombok.extern.slf4j.Slf4j; +import org.awaitility.Awaitility; import org.junit.After; import org.junit.Assert; import org.junit.Before; @@ -136,9 +137,10 @@ public class AuditLogControllerTest extends AbstractControllerTest { doPost("/api/tenantProfile", tenantProfile, TenantProfile.class); } - List loadedAuditLogs = getAuditLogs(100, "/api/audit/logs?"); - - Assert.assertEquals("Have X audit log before this test + New tenant profiles in the test", loadedAuditLogsBefore.size() + 3, loadedAuditLogs.size()); + int expectedSize = loadedAuditLogsBefore.size() + 3; + Awaitility.await().atMost(10, TimeUnit.SECONDS).untilAsserted(() -> + Assert.assertEquals("Have X audit log before this test + New tenant profiles in the test", + expectedSize, getAuditLogs(100, "/api/audit/logs?").size())); } private List getAuditLogs(int pageSize, String urlTemplate) throws Exception {