From d22ba35f883e120eb277720b47f3b772fd26e3e9 Mon Sep 17 00:00:00 2001 From: levlam Date: Mon, 18 Mar 2019 05:45:36 +0300 Subject: [PATCH] tg_cli: simplify testing of td_api::getSupergroupMembers. GitOrigin-RevId: bd28265cc385b5daf1b5b54241b94a26e3272e84 --- td/telegram/cli.cpp | 106 ++++++++------------------------------------ 1 file changed, 19 insertions(+), 87 deletions(-) diff --git a/td/telegram/cli.cpp b/td/telegram/cli.cpp index 32cfa395..98da34c9 100644 --- a/td/telegram/cli.cpp +++ b/td/telegram/cli.cpp @@ -2192,30 +2192,17 @@ class CliClient final : public Actor { } else if (op == "GetChatAdministrators") { string chat_id = args; send_request(td_api::make_object(as_chat_id(chat_id))); - } else if (op == "GetSupergroupAdministrators") { - string supergroup_id; - string offset; - string limit; - - std::tie(supergroup_id, args) = split(args); - std::tie(offset, limit) = split(args); - if (offset.empty()) { - offset = "0"; - } - if (limit.empty()) { - limit = "10"; - } - send_request(td_api::make_object( - as_supergroup_id(supergroup_id), td_api::make_object(), - to_integer(offset), to_integer(limit))); - } else if (op == "GetSupergroupBanned") { + } else if (op == "GetSupergroupAdministrators" || op == "GetSupergroupBanned" || op == "GetSupergroupBots" || + op == "GetSupergroupMembers" || op == "SearchSupergroupMembers" || op == "GetSupergroupRestricted") { string supergroup_id; string query; string offset; string limit; std::tie(supergroup_id, args) = split(args); - std::tie(query, args) = split(args); + if (op == "GetSupergroupBanned" || op == "SearchSupergroupMembers" || op == "GetSupergroupRestricted") { + std::tie(query, args) = split(args); + } std::tie(offset, limit) = split(args); if (offset.empty()) { offset = "0"; @@ -2223,77 +2210,22 @@ class CliClient final : public Actor { if (limit.empty()) { limit = "10"; } - send_request(td_api::make_object( - as_supergroup_id(supergroup_id), td_api::make_object(query), - to_integer(offset), to_integer(limit))); - } else if (op == "GetSupergroupBots") { - string supergroup_id; - string offset; - string limit; - - std::tie(supergroup_id, args) = split(args); - std::tie(offset, limit) = split(args); - if (offset.empty()) { - offset = "0"; - } - if (limit.empty()) { - limit = "10"; + td_api::object_ptr filter; + if (op == "GetSupergroupAdministrators") { + filter = td_api::make_object(); + } else if (op == "GetSupergroupBanned") { + filter = td_api::make_object(query); + } else if (op == "GetSupergroupBots") { + filter = td_api::make_object(); + } else if (op == "GetSupergroupMembers") { + filter = td_api::make_object(); + } else if (op == "SearchSupergroupMembers") { + filter = td_api::make_object(query); + } else if (op == "GetSupergroupBanned") { + filter = td_api::make_object(query); } send_request(td_api::make_object( - as_supergroup_id(supergroup_id), td_api::make_object(), - to_integer(offset), to_integer(limit))); - } else if (op == "GetSupergroupMembers") { - string supergroup_id; - string offset; - string limit; - - std::tie(supergroup_id, args) = split(args); - std::tie(offset, limit) = split(args); - if (offset.empty()) { - offset = "0"; - } - if (limit.empty()) { - limit = "10"; - } - send_request(td_api::make_object( - as_supergroup_id(supergroup_id), td_api::make_object(), - to_integer(offset), to_integer(limit))); - } else if (op == "SearchSupergroupMembers") { - string supergroup_id; - string query; - string offset; - string limit; - - std::tie(supergroup_id, args) = split(args); - std::tie(query, args) = split(args); - std::tie(offset, limit) = split(args); - if (offset.empty()) { - offset = "0"; - } - if (limit.empty()) { - limit = "10"; - } - send_request(td_api::make_object( - as_supergroup_id(supergroup_id), td_api::make_object(query), - to_integer(offset), to_integer(limit))); - } else if (op == "GetSupergroupRestricted") { - string supergroup_id; - string query; - string offset; - string limit; - - std::tie(supergroup_id, args) = split(args); - std::tie(query, args) = split(args); - std::tie(offset, limit) = split(args); - if (offset.empty()) { - offset = "0"; - } - if (limit.empty()) { - limit = "10"; - } - send_request(td_api::make_object( - as_supergroup_id(supergroup_id), td_api::make_object(query), - to_integer(offset), to_integer(limit))); + as_supergroup_id(supergroup_id), std::move(filter), to_integer(offset), to_integer(limit))); } else if (op == "gdialog" || op == "gd") { send_request(td_api::make_object(as_chat_id(args))); } else if (op == "open") {