You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@celix.apache.org by pn...@apache.org on 2026/04/16 06:38:57 UTC

(celix) 05/12: Expand testcase with downflank

This is an automated email from the ASF dual-hosted git repository.

pnoltes pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/celix.git

commit a09d5b1b1f8f7ecbeb4dd967ff00f395e0b73ec2
Author: Deedss <ge...@outlook.com>
AuthorDate: Tue Apr 7 19:09:08 2026 +0000

    Expand testcase with downflank
---
 .../gtest/src/DependencyManagerTestSuite.cc        | 26 +++++++++++++++++++++-
 1 file changed, 25 insertions(+), 1 deletion(-)

diff --git a/libs/framework/gtest/src/DependencyManagerTestSuite.cc b/libs/framework/gtest/src/DependencyManagerTestSuite.cc
index b1ab31627..70a692f70 100644
--- a/libs/framework/gtest/src/DependencyManagerTestSuite.cc
+++ b/libs/framework/gtest/src/DependencyManagerTestSuite.cc
@@ -1299,7 +1299,7 @@ TEST_F(DependencyManagerTestSuite, TestCardinality) {
         ASSERT_TRUE(cmpIt != cmpInfo.cend());
 
         EXPECT_TRUE(!cmpIt->uuid.empty());
-        EXPECT_EQ(cmpIt->state, "WAITING_FOR_REQUIRED");
+        EXPECT_EQ(cmpIt->state, celix_dmComponent_stateToString(CELIX_DM_CMP_STATE_WAITING_FOR_REQUIRED));
         EXPECT_FALSE(cmpIt->isActive);
         EXPECT_EQ(cmpIt->nrOfTimesStarted, 0);
         EXPECT_EQ(cmpIt->nrOfTimesResumed, 0);
@@ -1335,4 +1335,28 @@ TEST_F(DependencyManagerTestSuite, TestCardinality) {
         EXPECT_EQ(dep.isAvailable, true);
         EXPECT_EQ(dep.nrOfTrackedServices, 2);
     }
+
+    dm.removeComponent(cmp2.getUUID());
+
+    {
+        auto info = dm.getInfo();
+        ASSERT_EQ(info.components.size(), 2);
+        auto& cmpInfo = info.components;
+        auto cmpIt =
+            std::find_if(cmpInfo.cbegin(), cmpInfo.cend(), [](const ComponentInfo& cmp) { return cmp.name == "Cmp3"; });
+        ASSERT_TRUE(cmpIt != cmpInfo.cend());
+
+        EXPECT_TRUE(!cmpIt->uuid.empty());
+        EXPECT_EQ(cmpIt->state, celix_dmComponent_stateToString(CELIX_DM_CMP_STATE_INITIALIZED_AND_WAITING_FOR_REQUIRED));
+        EXPECT_FALSE(cmpIt->isActive);
+        EXPECT_EQ(cmpIt->nrOfTimesStarted, 1);
+        EXPECT_EQ(cmpIt->nrOfTimesResumed, 0);
+
+        ASSERT_EQ(cmpIt->dependenciesInfo.size(), 1);
+        auto& dep = cmpIt->dependenciesInfo[0];
+        EXPECT_EQ(dep.serviceName, "TestService");
+        EXPECT_EQ(dep.isRequired, true);
+        EXPECT_EQ(dep.isAvailable, false);
+        EXPECT_EQ(dep.nrOfTrackedServices, 1);
+    }
 }
\ No newline at end of file