#!perl use strict; no warnings; use Test::More; use AnyEvent::XMPP::TestClient; use AnyEvent::XMPP::IM::Message; use AnyEvent::XMPP::Util qw/bare_jid/; my $ANAL = $ENV{NET_XMPP2_TEST_ANAL}; my $cl = AnyEvent::XMPP::TestClient->new_or_exit ( tests => 1, connection_args => { disable_sasl => 1, stream_version_override => '0.9', resource => "AnyEvent::XMPP::TestClient", ($ANAL ? (anal_iq_auth => 1) : ()) } ); my $C = $cl->client; my $skip = 0; my $got_session = 0; $C->reg_cb ( stream_pre_authentication => sub { my ($C, $acc) = @_; my $feat = $acc->connection->features; if ($ANAL) { if (!$feat->find_all ([qw/iqauth auth/])) { $skip = 1; $cl->finish; } } () }, session_ready => sub { $got_session = 1; $cl->finish } ); $cl->wait; SKIP: { skip "no IQ auth method found", $cl->tests if $skip; ok ($got_session, "iq authentication"); }