return method_call_no_signal(dbus_method_call.SwitchUserDone, params);
}
-EXPORT_API int subsession_event_wait_done(int session_uid, subsession_event_type_e event, subsession_event_info info) {
+EXPORT_API int subsession_event_wait_done(subsession_event_info info) {
return_if(
- session_uid_is_not_valid(session_uid)
+ session_uid_is_not_valid(info.session_uid)
)
- switch (event) {
+ switch (info.event) {
case SUBSESSION_ADD_USER_WAIT:
return_if(
user_id_is_not_valid(info.add_user.user)
)
- return subsession_add_user_wait_done(session_uid, info.add_user.user);
+ return subsession_add_user_wait_done(info.session_uid, info.add_user.user);
break;
case SUBSESSION_REMOVE_USER_WAIT:
return_if(
user_id_is_not_valid(info.remove_user.user)
)
- return subsession_remove_user_wait_done(session_uid, info.remove_user.user);
+ return subsession_remove_user_wait_done(info.session_uid, info.remove_user.user);
break;
case SUBSESSION_SWITCH_USER_WAIT:
return_if(
switched_user_id_is_not_valid(info.switch_user.switch_id)
)
- return subsession_switch_wait_done(session_uid, info.switch_user.switch_id);
+ return subsession_switch_wait_done(info.session_uid, info.switch_user.switch_id);
break;
default:
}
};
+ auto get_info = [&] (int suid, subsession_event_type_e e) {
+ auto tmp = e_info;
+ tmp.event = e;
+ tmp.session_uid = suid;
+ return tmp;
+ };
+
std::array<res_t, test_actions> results {
res_t {
- subsession_event_wait_done(
+ subsession_event_wait_done(get_info(
subsession_5001::subsession_uid(),
- subsession_event_type_e(SUBSESSION_EVENT_ALL),
- e_info),
+ subsession_event_type_e(SUBSESSION_EVENT_ALL))),
SUBSESSION_ERROR_INVALID_PARAMETER,
"Check if subsession_event_wait_done with SUBSESSION_EVENT_ALL returns error" },
res_t {
- subsession_event_wait_done(
+ subsession_event_wait_done(get_info(
subsession_5001::subsession_uid(),
- subsession_event_type_e(SUBSESSION_ADD_USER_WAIT | SUBSESSION_REMOVE_USER_WAIT),
- e_info),
+ subsession_event_type_e(SUBSESSION_ADD_USER_WAIT | SUBSESSION_REMOVE_USER_WAIT))),
SUBSESSION_ERROR_INVALID_PARAMETER,
"Check if subsession_event_wait_done with SUBSESSION_ADD_USER_WAIT | SUBSESSION_REMOVE_USER_WAIT returns error" },
- res_t { subsession_event_wait_done(
+ res_t { subsession_event_wait_done(get_info(
subsession_5001::subsession_uid(),
- subsession_event_type_e(SUBSESSION_ADD_USER_WAIT | SUBSESSION_SWITCH_USER_WAIT),
- e_info),
+ subsession_event_type_e(SUBSESSION_ADD_USER_WAIT | SUBSESSION_SWITCH_USER_WAIT))),
SUBSESSION_ERROR_INVALID_PARAMETER,
"Check if subsession_event_wait_done with SUBSESSION_ADD_USER_WAIT | SUBSESSION_SWITCH_USER_WAIT returns error" },
- res_t { subsession_event_wait_done(
+ res_t { subsession_event_wait_done(get_info(
subsession_5001::subsession_uid(),
- subsession_event_type_e(SUBSESSION_ADD_USER_WAIT | SUBSESSION_SWITCH_USER_COMPLETION),
- e_info),
+ subsession_event_type_e(SUBSESSION_ADD_USER_WAIT | SUBSESSION_SWITCH_USER_COMPLETION))),
SUBSESSION_ERROR_INVALID_PARAMETER,
"Check if subsession_event_wait_done with SUBSESSION_ADD_USER_WAIT | SUBSESSION_SWITCH_USER_COMPLETION returns error" },
- res_t { subsession_event_wait_done(
+ res_t { subsession_event_wait_done(get_info(
subsession_5001::subsession_uid(),
- subsession_event_type_e(SUBSESSION_ADD_USER_WAIT | SUBSESSION_REMOVE_USER_WAIT | SUBSESSION_SWITCH_USER_WAIT),
- e_info),
+ subsession_event_type_e(SUBSESSION_ADD_USER_WAIT | SUBSESSION_REMOVE_USER_WAIT | SUBSESSION_SWITCH_USER_WAIT))),
SUBSESSION_ERROR_INVALID_PARAMETER,
"Check if subsession_event_wait_done with SUBSESSION_ADD_USER_WAIT | SUBSESSION_REMOVE_USER_WAIT | SUBSESSION_SWITCH_USER_WAIT returns error" },
- res_t { subsession_event_wait_done(
+ res_t { subsession_event_wait_done(get_info(
subsession_5001::subsession_uid(),
- subsession_event_type_e(SUBSESSION_ADD_USER_WAIT | SUBSESSION_REMOVE_USER_WAIT | SUBSESSION_SWITCH_USER_COMPLETION),
- e_info),
+ subsession_event_type_e(SUBSESSION_ADD_USER_WAIT | SUBSESSION_REMOVE_USER_WAIT | SUBSESSION_SWITCH_USER_COMPLETION))),
SUBSESSION_ERROR_INVALID_PARAMETER,
"Check if subsession_event_wait_done with SUBSESSION_ADD_USER_WAIT | SUBSESSION_REMOVE_USER_WAIT | SUBSESSION_SWITCH_USER_COMPLETION returns error" },
- res_t { subsession_event_wait_done(
+ res_t { subsession_event_wait_done(get_info(
subsession_5001::subsession_uid(),
- subsession_event_type_e(SUBSESSION_ADD_USER_WAIT | SUBSESSION_SWITCH_USER_WAIT | SUBSESSION_SWITCH_USER_COMPLETION),
- e_info),
+ subsession_event_type_e(SUBSESSION_ADD_USER_WAIT | SUBSESSION_SWITCH_USER_WAIT | SUBSESSION_SWITCH_USER_COMPLETION))),
SUBSESSION_ERROR_INVALID_PARAMETER,
"Check if subsession_event_wait_done with SUBSESSION_ADD_USER_WAIT | SUBSESSION_SWITCH_USER_WAIT | SUBSESSION_SWITCH_USER_COMPLETION returns error" },
- res_t { subsession_event_wait_done(
+ res_t { subsession_event_wait_done(get_info(
-(subsession_5001::subsession_uid()),
- subsession_event_type_e(SUBSESSION_SWITCH_USER_WAIT),
- e_info),
+ subsession_event_type_e(SUBSESSION_SWITCH_USER_WAIT))),
SUBSESSION_ERROR_INVALID_PARAMETER,
"Check if subsession_event_wait_done with bad session_uid < 0 value" },
- res_t { subsession_event_wait_done(
+ res_t { subsession_event_wait_done(get_info(
0,
- subsession_event_type_e(SUBSESSION_SWITCH_USER_WAIT),
- e_info),
+ subsession_event_type_e(SUBSESSION_SWITCH_USER_WAIT))),
SUBSESSION_ERROR_INVALID_PARAMETER,
"Check if subsession_event_wait_done with bad session_uid = 0 value" },
};