Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
33 commits
Select commit Hold shift + click to select a range
7685c99
implement equals check tests and fix color equals check.
DivineThreepwood Feb 18, 2026
fb0e868
upgrade jul
DivineThreepwood Feb 18, 2026
3ad5f9f
fix addon commit message contains no addon name.
DivineThreepwood Feb 18, 2026
6b1726a
cleanup code and address revise
DivineThreepwood Mar 10, 2026
a76d46e
fix formatting
DivineThreepwood Mar 10, 2026
e4e71de
improve test performance
DivineThreepwood Mar 10, 2026
a84125a
Merge dev into bugfix/154-colorstate-comparison-fails-when-comparing-…
github-actions[bot] Mar 18, 2026
aa7e578
contiune on module test failure
DivineThreepwood Mar 18, 2026
df3c09f
avoid on each test fork
DivineThreepwood Mar 18, 2026
34ff0b1
patch jul with test container fixes
DivineThreepwood Mar 18, 2026
114452d
upgrade jul to 3.7.3
DivineThreepwood Mar 18, 2026
a55a8e6
cleanup
DivineThreepwood Mar 18, 2026
8baced0
improve auth test
DivineThreepwood Mar 18, 2026
5c61eff
improve message manager thread safety
DivineThreepwood Mar 18, 2026
572a1e9
update jule
DivineThreepwood Mar 18, 2026
9373aab
always shutdown message manager after each test.
DivineThreepwood Mar 29, 2026
fea60a2
patch jul
DivineThreepwood Mar 29, 2026
220c135
improve logging in RemoteAction
DivineThreepwood Mar 30, 2026
783a522
log action details in abstract bco test.
DivineThreepwood Mar 30, 2026
5a83be7
update jul
DivineThreepwood Mar 30, 2026
e64a143
improve scene test error logging.
DivineThreepwood Mar 30, 2026
0beec80
Merge dev into bugfix/154-colorstate-comparison-fails-when-comparing-…
github-actions[bot] Apr 6, 2026
841cb87
update jul
DivineThreepwood Apr 6, 2026
02ced83
upgrade jul to lastest
DivineThreepwood Apr 9, 2026
f96b0c7
Merge branch 'bugfix/154-colorstate-comparison-fails-when-comparing-w…
DivineThreepwood Apr 9, 2026
c259961
upgrade jul in gradle to latest version
DivineThreepwood Apr 9, 2026
0581c65
upgrade jul in gradle to latest version
DivineThreepwood Apr 9, 2026
7d9c02c
temporary disable all timeouts
DivineThreepwood Apr 9, 2026
f286ac3
further disable timeouts
DivineThreepwood Apr 9, 2026
90b2b3c
fix ci action and address requested changes of the review.
DivineThreepwood Apr 10, 2026
48d1e31
improve label and id performance by introducing caches.
DivineThreepwood Apr 11, 2026
d1c47d7
bump jul to latest
DivineThreepwood Apr 11, 2026
e837746
fix compile isue
DivineThreepwood Apr 11, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 1 addition & 2 deletions .github/workflows/build-and-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -122,12 +122,11 @@ jobs:
run: ./prepare.sh

- name: "test backend"
run: ./gradlew --build-cache check
run: ./gradlew --build-cache --continue check

- name: Upload test reports
uses: actions/upload-artifact@v4
if: ${{ failure() || contains(github.event.pull_request.labels.*.name, 'force reports') }}
with:
name: Test Reports
path: "**/build/reports"

2 changes: 1 addition & 1 deletion .github/workflows/deploy-docker.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ on:

jobs:
docker:
# if: ${{ github.event_name != 'pull_request' || contains(github.event.pull_request.labels.*.name, 'preview') }}
if: ${{ github.event_name != 'pull_request' || contains(github.event.pull_request.labels.*.name, 'preview') }}
runs-on: ubuntu-latest
outputs:
bco-tags: ${{ steps.bco-meta.outputs.tags }}
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/update-addon-version.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -95,7 +95,7 @@ jobs:
git config user.name "$GIT_USERNAME"
git config user.email "$GIT_EMAIL"
git add config.yaml
git commit -m "Update add-on $ADDONS_DIR version to $VERSION" || {
git commit -m "Update add-on $ADDON_DIR version to $VERSION" || {
echo "No changes to commit"
exit 0
}
Expand Down
1 change: 0 additions & 1 deletion buildSrc/src/main/kotlin/org.openbase.bco.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,6 @@ tasks.withType<Test> {
logging.captureStandardOutput(LogLevel.WARN)
maxHeapSize = "7G"
failFast = false
setForkEvery(1)
}

publishing {
Expand Down
2 changes: 1 addition & 1 deletion lib/jul
Submodule jul updated 17 files
+7 −7 .github/workflows/build-and-test.yml
+4 −3 .github/workflows/inspect-code.yml
+17 −7 .github/workflows/publish-jars.yml
+1 −1 gradle.properties
+86 −56 ...nication/controller/src/main/java/org/openbase/jul/communication/controller/AbstractConfigurableRemote.java
+19 −0 ...tion/controller/src/main/java/org/openbase/jul/communication/controller/AbstractIdentifiableController.java
+1 −1 ...cation/controller/src/test/java/org/openbase/jul/communication/controller/AbstractControllerServerTest.java
+1 −0 module/communication/mqtt/build.gradle.kts
+7 −1 module/communication/mqtt/src/main/java/org/openbase/jul/communication/mqtt/SharedMqttClient.kt
+17 −63 module/communication/mqtt/src/test/java/org/openbase/jul/communication/mqtt/AbstractIntegrationTest.kt
+0 −1 module/communication/mqtt/src/test/java/org/openbase/jul/communication/mqtt/IntegrationTest.kt
+0 −4 module/communication/mqtt/src/test/java/org/openbase/jul/communication/mqtt/SharedMqttClientTest.kt
+65 −0 module/communication/mqtttest/src/main/kotlin/org/openbase/jul/communication/mqtt/test/MqttBrokerManager.kt
+3 −58 module/communication/mqtttest/src/main/kotlin/org/openbase/jul/communication/mqtt/test/MqttIntegrationTest.kt
+5 −3 module/storage/src/main/java/org/openbase/jul/storage/registry/FileSynchronizedRegistryImpl.java
+5 −1 module/storage/src/main/java/org/openbase/jul/storage/registry/ProtoBufFileSynchronizedRegistry.java
+422 −8 versions.properties
Original file line number Diff line number Diff line change
Expand Up @@ -50,15 +50,15 @@ public class ServiceStateTraitMapperFactoryTest extends MqttIntegrationTest {
private static final Logger LOGGER = LoggerFactory.getLogger(ServiceStateTraitMapperFactoryTest.class);

@BeforeEach
@Timeout(30)
// @Timeout(30)
public void setupTest() throws Exception {
MockRegistryHolder.newMockRegistry();

Registries.getTemplateRegistry(true);
}

@AfterEach
@Timeout(30)
// @Timeout(30)
public void tearDownTest() {
MockRegistryHolder.shutdownMockRegistry();
}
Expand All @@ -67,7 +67,7 @@ public void tearDownTest() {
* Test if for all defined combinations of services and traits a mapper is available.
*/
@Test
@Timeout(value = 30)
// @Timeout(value = 30)
public void testMapperAvailability() {
LOGGER.info("testMapperAvailability");

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ public class UnitTypeMappingTest {
* @throws IllegalArgumentException if the name of a unitTypeMapping does not lead to the according unitType.
*/
@Test
@Timeout(10)
// @Timeout(10)
public void testUnitTypeValidity() throws IllegalArgumentException {
LOGGER.info("testUnitTypeValidity");
for (final UnitTypeMapping unitTypeMapping : UnitTypeMapping.values()) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ public class AbsenceEnergySavingAgentTest extends AbstractBCOAgentManagerTest {
* @throws java.lang.Exception
*/
@Test
@Timeout(10)
// @Timeout(10)
public void testAbsenceEnergySavingAgent() throws Exception {
System.out.println("testAbsenceEnergySavingAgent");

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ public class FireAlarmAgentTest extends AbstractBCOAgentManagerTest {
* @throws java.lang.Exception
*/
@Test
@Timeout(10)
// @Timeout(10)
public void testFireAlarmAgent() throws Exception {
System.out.println("testFireAlarmAgent");

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ public class HeaterEnergySavingAgentTest extends AbstractBCOAgentManagerTest {
* @throws java.lang.Exception
*/
@Test
@Timeout(10)
// @Timeout(10)
public void testHeaterEnergySavingAgent() throws Exception {
System.out.println("testHeaterEnergySavingAgent");

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ public class IlluminationLightSavingAgentTest extends AbstractBCOAgentManagerTes
* @throws java.lang.Exception
*/
@Test
@Timeout(10)
// @Timeout(10)
public void testIlluminationLightSavingAgent() throws Exception {
System.out.println("testIlluminationLightSavingAgent");

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ public class PowerStateSynchroniserAgentTest extends AbstractBCOAgentManagerTest
* @throws java.lang.Exception
*/
@Test
@Timeout(15)
// @Timeout(15)
public void testPowerStateSyncAgent() throws Exception {
System.out.println("testPowerStateSyncAgent");

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -134,7 +134,7 @@ public void prepareEnvironment() throws CouldNotPerformException, InterruptedExc
* @throws java.lang.Exception
*/
@Test
@Timeout(30)
// @Timeout(30)
public void testPresenceLightAgent() throws Exception {

// test if on motion the lights are turned on
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ public abstract class AbstractBCOAgentManagerTest extends BCOAppTest {
protected AgentRemote agentRemote = null;

@BeforeEach
@Timeout(30)
// @Timeout(30)
public void createAgent() throws Exception {
prepareEnvironment();
try {
Expand All @@ -72,7 +72,7 @@ public void createAgent() throws Exception {
}

@AfterEach
@Timeout(30)
// @Timeout(30)
public void removeAgent() throws Exception {
Registries.getUnitRegistry().removeUnitConfig(agentConfig);
agentRemote.waitForConnectionState(ConnectionState.State.DISCONNECTED);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ abstract class AbstractBCOAppManagerTest<APP_CLASS : AbstractAppController?> : B
protected var appController: APP_CLASS? = null

@BeforeEach
@Timeout(30)
// @Timeout(30)
@Throws(Exception::class)
fun prepareAppManager() {
try {
Expand Down Expand Up @@ -111,7 +111,7 @@ abstract class AbstractBCOAppManagerTest<APP_CLASS : AbstractAppController?> : B
}

@AfterEach
@Timeout(30)
// @Timeout(30)
@Throws(Exception::class)
fun removeAgent() {
if (appConfig != null) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ public class BCOAppTest extends AbstractBCOTest {
protected static MessageManagerLauncher messageManagerLauncher;

@BeforeAll
@Timeout(30)
// @Timeout(30)
public static void setupBcoApp() throws Throwable {
try {
LOGGER.trace("Start device manager...");
Expand Down Expand Up @@ -85,7 +85,7 @@ public static void setupBcoApp() throws Throwable {
}

@AfterAll
@Timeout(30)
// @Timeout(30)
public static void tearDownBCOApp() throws Throwable {
LOGGER.info("Tear down app tests...");
try {
Expand All @@ -101,6 +101,9 @@ public static void tearDownBCOApp() throws Throwable {
if (deviceManagerLauncher != null) {
deviceManagerLauncher.shutdown();
}
if (messageManagerLauncher != null) {
messageManagerLauncher.shutdown();
}
LOGGER.info("App tests finished!");
} catch (Throwable ex) {
throw ExceptionPrinter.printHistoryAndReturnThrowable(ex, LOGGER);
Expand All @@ -113,7 +116,7 @@ public static void tearDownBCOApp() throws Throwable {
* @throws InterruptedException is thrown if the thread was externally interrupted
*/
@AfterEach
@Timeout(30)
// @Timeout(30)
public void cancelAllOngoingActions() throws InterruptedException {
LOGGER.info("Cancel all ongoing actions...");
try {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ public class AbstractBCOManagerTest extends AbstractBCOTest {
protected static UserManagerLauncher userManagerLauncher;

@BeforeAll
@Timeout(30)
// @Timeout(30)
public static void setupBCOManager() throws Throwable {
try {
agentManagerLauncher = new AgentManagerLauncher();
Expand All @@ -75,7 +75,7 @@ public static void setupBCOManager() throws Throwable {
}

@AfterAll
@Timeout(30)
// @Timeout(30)
public static void tearDownBCOManager() throws Throwable {
try {
if (agentManagerLauncher != null) {
Expand Down Expand Up @@ -107,7 +107,7 @@ public static void tearDownBCOManager() throws Throwable {
* @throws InterruptedException is thrown if the thread was externally interrupted
*/
@AfterEach
@Timeout(30)
// @Timeout(30)
public void cancelAllOngoingActions() throws InterruptedException {
LOGGER.info("Cancel all ongoing actions...");
try {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ public UnitTransformationTest() {
}

@Test
@Timeout(30)
// @Timeout(30)
public void testUnitTransformation() throws Exception {
System.out.println("testUnitTransformation");
try {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@
class SynchronizationProcessorTest {

@Test
@Timeout(20)
// @Timeout(20)
void getUniquePrefix() {
assertNotEquals(
SynchronizationProcessor.getUniquePrefix("00:17:88:01:08:0c:f4:60-02-fc00"),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -81,4 +81,13 @@ object AuthenticationFutureList {
notificationCondition.await()
}
}

fun reset() {
synchronized(authenticatedFuturesLock) {
synchronized(incomingFuturesLock) {
incomingFutures.clear()
authenticatedFutures.clear()
}
}
}
}
4 changes: 0 additions & 4 deletions module/authentication/test/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,6 @@ plugins {
id("org.openbase.bco")
}

configurations {

}

dependencies {
api(project(":bco.authentication.core"))
api(project(":bco.authentication.lib"))
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ private static void registerUser() throws Exception {
}

@BeforeEach
@Timeout(30)
// @Timeout(30)
public void setupUser() throws Throwable {
// register a user from which a ticket can be validated
registerUser();
Expand All @@ -78,7 +78,7 @@ public void setupUser() throws Throwable {
* @throws java.lang.Exception
*/
@Test
@Timeout(10)
// @Timeout(10)
public void testCommunication() throws Exception {
final UnitConfig.Builder otherAgentConfig = UnitConfig.newBuilder();
otherAgentConfig.setId("OtherAgent");
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,13 +19,13 @@ class AuthenticationFutureListTest {
companion object {
@JvmStatic
@BeforeAll
@Timeout(30)
// @Timeout(30)
fun setup() {
JPService.setupJUnitTestMode()
}
}

@Timeout(3)
// @Timeout(3)
@Test
fun testTakeIfTerminated() {
val completedFuture = FutureProcessor.completedFuture()
Expand All @@ -42,9 +42,10 @@ class AuthenticationFutureListTest {
AuthenticationFutureList.takeIfTerminated(runningFuture) shouldBe null
}

@Timeout(5)
// @Timeout(5)
@Test
fun testScheduledTask() {
AuthenticationFutureList.reset()
val lock = ReentrantLock()
val condition: Condition = lock.newCondition()

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ public class AuthenticationTest extends MqttIntegrationTest {
public static byte[] serviceServerSecretKey = EncryptionHelper.generateKey();

@BeforeEach
@Timeout(30)
// @Timeout(30)
public void setupAuthentication() throws Throwable {
JPService.setupJUnitTestMode();
CachedAuthenticationRemote.prepare();
Expand All @@ -57,7 +57,7 @@ public void setupAuthentication() throws Throwable {
}

@AfterEach
@Timeout(30)
// @Timeout(30)
public void tearDownAuthentication() {
// reset credential store because it could have been changed in a test
MockCredentialStore.getInstance().reset();
Expand Down
Loading
Loading