forked from Kistler-Group/sdbus-cpp
Enable default construction of PendingAsyncCall (#180)
This is helpful in use cases where a user defined class wants to store a PendingAsyncCall as a member variable, or in a STL container.
This commit is contained in:
@ -293,6 +293,8 @@ namespace sdbus {
|
|||||||
class PendingAsyncCall
|
class PendingAsyncCall
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
PendingAsyncCall() = default;
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* @brief Cancels the delivery of the pending asynchronous call result
|
* @brief Cancels the delivery of the pending asynchronous call result
|
||||||
*
|
*
|
||||||
|
@ -201,6 +201,22 @@ TEST_F(SdbusTestObject, AnswersThatAsyncCallIsNotPendingAfterItHasBeenCompleted)
|
|||||||
ASSERT_TRUE(waitUntil([&call](){ return !call.isPending(); }));
|
ASSERT_TRUE(waitUntil([&call](){ return !call.isPending(); }));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
TEST_F(SdbusTestObject, AnswersThatDefaultConstructedAsyncCallIsNotPending)
|
||||||
|
{
|
||||||
|
sdbus::PendingAsyncCall call;
|
||||||
|
|
||||||
|
ASSERT_FALSE(call.isPending());
|
||||||
|
}
|
||||||
|
|
||||||
|
TEST_F(SdbusTestObject, SupportsAsyncCallCopyAssignment)
|
||||||
|
{
|
||||||
|
sdbus::PendingAsyncCall call;
|
||||||
|
|
||||||
|
call = m_proxy->doOperationClientSideAsync(100);
|
||||||
|
|
||||||
|
ASSERT_TRUE(call.isPending());
|
||||||
|
}
|
||||||
|
|
||||||
TEST_F(SdbusTestObject, InvokesErroneousMethodAsynchronouslyOnClientSide)
|
TEST_F(SdbusTestObject, InvokesErroneousMethodAsynchronouslyOnClientSide)
|
||||||
{
|
{
|
||||||
std::promise<uint32_t> promise;
|
std::promise<uint32_t> promise;
|
||||||
|
Reference in New Issue
Block a user