#!perl use strict; no warnings; use Test::More; use AnyEvent::XMPP::TestClient; use AnyEvent::XMPP::IM::Message; use AnyEvent::XMPP::Util qw/bare_jid prep_bare_jid split_jid cmp_jid/; use AnyEvent::XMPP::Ext::MUC; my $cl = AnyEvent::XMPP::TestClient->new_or_exit ( tests => 1, two_accounts => 1, muc_test => 1, finish_count => 1 ); my $C = $cl->client; my $newsubject = ''; $C->reg_cb ( two_rooms_joined => sub { my ($C) = @_; $cl->{muc}->reg_cb ( subject_change => sub { my ($muc, $room, $msg, $is_echo) = @_; return if $is_echo; return unless cmp_jid ($room->nick_jid, $cl->{room2}->nick_jid); $newsubject = $msg->any_subject; $cl->finish; } ); $cl->{room}->change_subject ("TEST ABC"); } ); $cl->wait; is ($newsubject, 'TEST ABC', "subject has been changed");