diff options
author | Brad Bishop <bradleyb@fuzziesquirrel.com> | 2016-12-01 08:38:06 -0500 |
---|---|---|
committer | Brad Bishop <bradleyb@fuzziesquirrel.com> | 2017-01-12 16:53:38 -0500 |
commit | 22ecacc18c3b3623f98aa7e7efec659dd3593b7d (patch) | |
tree | 01c8c103b40bb116c95f43eb88a527ac6d281895 /test/test.cpp | |
parent | e2e402f323d0ffb0e0581650712b083504efde34 (diff) | |
download | phosphor-inventory-manager-22ecacc18c3b3623f98aa7e7efec659dd3593b7d.tar.gz phosphor-inventory-manager-22ecacc18c3b3623f98aa7e7efec659dd3593b7d.zip |
Add a testcase for setProperty
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
Change-Id: Ifade8963ebc8d18dbdca46ece16800cf8ea8a6ad
Diffstat (limited to 'test/test.cpp')
-rw-r--r-- | test/test.cpp | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/test/test.cpp b/test/test.cpp index 0a1fbd9..13b8934 100644 --- a/test/test.cpp +++ b/test/test.cpp @@ -261,6 +261,54 @@ void runTests(phosphor::inventory::manager::Manager &mgr) } } + // Validate the set property action. + { + ObjectPath relChangeMe{"/changeme"}; + ObjectPath relTriggerTwo{"/trigger2"}; + ObjectPath changeMe{root + relChangeMe}; + ObjectPath triggerTwo{root + relTriggerTwo}; + + // Create an object to be updated by the set property action. + { + auto m = notify(); + m.append(relChangeMe); + m.append(obj); + b.call(m); + } + + // Create the triggering object. + { + auto m = notify(); + m.append(relTriggerTwo); + m.append(obj); + b.call(m); + } + + // Trigger and validate the change. + { + SignalQueue queue( + "path='" + changeMe + "',member='PropertiesChanged'"); + auto m = set(triggerTwo); + m.append("xyz.openbmc_project.Example.Iface2"); + m.append("ExampleProperty2"); + m.append(sdbusplus::message::variant<std::string>("yyyxxx")); + b.call(m); + + std::string sigInterface; + std::map< + std::string, + sdbusplus::message::variant<std::string>> sigProperties; + { + std::vector<std::string> interfaces; + auto sig{queue.pop()}; + sig.read(sigInterface); + assert(sigInterface == "xyz.openbmc_project.Example.Iface1"); + sig.read(sigProperties); + assert(sigProperties["ExampleProperty1"] == "changed"); + } + } + } + mgr.shutdown(); std::cout << "Success!" << std::endl; } |