test(autoping): add test for autoping warning exclusion on subdomain services
All checks were successful
CI Code / Check spelling (pull_request) Successful in 15s
CI Code / Check coding style (pull_request) Successful in 30s
CI Code / Code Coverage (pull_request) Successful in 3m47s
CI Code / Linux (debian) (pull_request) Successful in 5m11s
CI Code / Linux (ubuntu) (pull_request) Successful in 5m16s
CI Code / Linux (arch) (pull_request) Successful in 7m9s
All checks were successful
CI Code / Check spelling (pull_request) Successful in 15s
CI Code / Check coding style (pull_request) Successful in 30s
CI Code / Code Coverage (pull_request) Successful in 3m47s
CI Code / Linux (debian) (pull_request) Successful in 5m11s
CI Code / Linux (ubuntu) (pull_request) Successful in 5m16s
CI Code / Linux (arch) (pull_request) Successful in 7m9s
The new test verifies that disco#info responses from subdomain services (e.g., conference servers) do not trigger the autoping warning, ensuring the check is correctly restricted to the server's own domain.
This commit is contained in:
@@ -156,6 +156,7 @@ main(int argc, char* argv[])
|
|||||||
PROF_FUNC_TEST(autoping_warning_not_shown_when_autoping_enabled),
|
PROF_FUNC_TEST(autoping_warning_not_shown_when_autoping_enabled),
|
||||||
PROF_FUNC_TEST(autoping_warning_not_shown_when_user_disabled),
|
PROF_FUNC_TEST(autoping_warning_not_shown_when_user_disabled),
|
||||||
PROF_FUNC_TEST(autoping_warning_not_shown_for_user_jid),
|
PROF_FUNC_TEST(autoping_warning_not_shown_for_user_jid),
|
||||||
|
PROF_FUNC_TEST(autoping_warning_not_shown_for_subdomain_service),
|
||||||
|
|
||||||
/* Service Discovery - XEP-0030 */
|
/* Service Discovery - XEP-0030 */
|
||||||
PROF_FUNC_TEST(disco_info_shows_identity),
|
PROF_FUNC_TEST(disco_info_shows_identity),
|
||||||
|
|||||||
@@ -231,3 +231,25 @@ autoping_warning_not_shown_for_user_jid(void** state)
|
|||||||
prof_timeout(NEGATIVE_ASSERT_TIMEOUT);
|
prof_timeout(NEGATIVE_ASSERT_TIMEOUT);
|
||||||
assert_false(prof_output_regex(AUTOPING_WARNING_MATCH));
|
assert_false(prof_output_regex(AUTOPING_WARNING_MATCH));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
autoping_warning_not_shown_for_subdomain_service(void** state)
|
||||||
|
{
|
||||||
|
// disco#info from a subdomain service should not trigger the warning, only the server's own domain should
|
||||||
|
stbbr_for_query("http://jabber.org/protocol/disco#info",
|
||||||
|
"<iq to='stabber@localhost/profanity' type='result' from='conf.localhost'>"
|
||||||
|
"<query xmlns='http://jabber.org/protocol/disco#info'>"
|
||||||
|
"<identity category='conference' type='text' name='Conference Service'/>"
|
||||||
|
"<feature var='urn:xmpp:ping'/>"
|
||||||
|
"</query>"
|
||||||
|
"</iq>"
|
||||||
|
);
|
||||||
|
|
||||||
|
prof_input("/autoping set 0");
|
||||||
|
assert_true(prof_output_exact("Autoping disabled."));
|
||||||
|
|
||||||
|
prof_connect();
|
||||||
|
|
||||||
|
prof_timeout(NEGATIVE_ASSERT_TIMEOUT);
|
||||||
|
assert_false(prof_output_regex(AUTOPING_WARNING_MATCH));
|
||||||
|
}
|
||||||
|
|||||||
@@ -9,3 +9,4 @@ void autoping_warning_not_shown_when_server_unsupported(void** state);
|
|||||||
void autoping_warning_not_shown_when_autoping_enabled(void** state);
|
void autoping_warning_not_shown_when_autoping_enabled(void** state);
|
||||||
void autoping_warning_not_shown_when_user_disabled(void** state);
|
void autoping_warning_not_shown_when_user_disabled(void** state);
|
||||||
void autoping_warning_not_shown_for_user_jid(void** state);
|
void autoping_warning_not_shown_for_user_jid(void** state);
|
||||||
|
void autoping_warning_not_shown_for_subdomain_service(void** state);
|
||||||
|
|||||||
Reference in New Issue
Block a user