@@ -351,10 +351,9 @@ TYPED_TEST(SdbusTestObject, CanRegisterAdditionalVTableDynamicallyAtAnyTime)
351351{
352352 auto & object = this ->m_adaptor ->getObject ();
353353 sdbus::InterfaceName const interfaceName{" org.sdbuscpp.integrationtests2" };
354- std::vector<sdbus::VTableItem> vtable;
355- vtable.emplace_back (sdbus::registerMethod (" add" ).implementedAs ([](const double & lhs, const double & rhs){ return lhs + rhs; }));
356- vtable.emplace_back (sdbus::registerMethod (" subtract" ).implementedAs ([](const int & lhs, const int & rhs){ return lhs - rhs; }));
357- auto vtableSlot = object.addVTable (interfaceName, std::move (vtable), sdbus::return_slot);
354+ auto vtableSlot = object.addVTable ( sdbus::registerMethod (" add" ).implementedAs ([](const double & lhs, const double & rhs){ return lhs + rhs; })
355+ , sdbus::registerMethod (" subtract" ).implementedAs ([](const int & lhs, const int & rhs){ return lhs - rhs; })
356+ ).forInterface (interfaceName, sdbus::return_slot);
358357
359358 // The new remote vtable is registered as long as we keep vtableSlot, so remote method calls now should pass
360359 auto proxy = sdbus::createLightWeightProxy (SERVICE_NAME , OBJECT_PATH );
@@ -368,11 +367,10 @@ TYPED_TEST(SdbusTestObject, CanUnregisterAdditionallyRegisteredVTableAtAnyTime)
368367{
369368 auto & object = this ->m_adaptor ->getObject ();
370369 sdbus::InterfaceName const interfaceName{" org.sdbuscpp.integrationtests2" };
370+ auto vtableSlot = object.addVTable ( sdbus::registerMethod (" add" ).implementedAs ([](const double & lhs, const double & rhs){ return lhs + rhs; })
371+ , sdbus::registerMethod (" subtract" ).implementedAs ([](const int & lhs, const int & rhs){ return lhs - rhs; })
372+ ).forInterface (interfaceName, sdbus::return_slot);
371373
372- std::vector<sdbus::VTableItem> vtable;
373- vtable.emplace_back (sdbus::registerMethod (" add" ).implementedAs ([](const double & lhs, const double & rhs){ return lhs + rhs; }));
374- vtable.emplace_back (sdbus::registerMethod (" subtract" ).implementedAs ([](const int & lhs, const int & rhs){ return lhs - rhs; }));
375- auto vtableSlot = object.addVTable (interfaceName, std::move (vtable), sdbus::return_slot);
376374 vtableSlot.reset (); // Letting the slot go means letting go the associated vtable registration
377375
378376 // No such remote D-Bus method under given interface exists anymore...
0 commit comments