use lib "t/lib"; use Test::More tests=>93; BEGIN{ use_ok( "Net::Jabber" ); } require "t/mytestlib.pl"; my $query = new Net::Jabber::Stanza("query"); ok( defined($query), "new()" ); isa_ok( $query, "Net::Jabber::Stanza" ); isa_ok( $query, "Net::XMPP::Stanza" ); testScalar($query,"XMLNS","jabber:iq:filter"); my $rule1 = $query->AddRule(); ok( defined($rule1), "new()" ); isa_ok( $rule1, "Net::Jabber::Stanza" ); isa_ok( $rule1, "Net::XMPP::Stanza" ); testScalar($rule1,"Body","body1"); testScalar($rule1,"Continued","continued1"); testScalar($rule1,"Drop","drop1"); testScalar($rule1,"Edit","edit1"); testScalar($rule1,"Error","error1"); testScalar($rule1,"From","from1"); testScalar($rule1,"Offline","offline1"); testScalar($rule1,"Reply","reply1"); testScalar($rule1,"Resource","resource1"); testScalar($rule1,"Show","show1"); testScalar($rule1,"Size","size1"); testScalar($rule1,"Subject","subject1"); testScalar($rule1,"Time","time1"); testScalar($rule1,"Type","type1"); testScalar($rule1,"Unavailable","unavailable1"); is( $query->GetXML(), "body1continued1drop1edit1error1from1offline1reply1resource1show1size1subject1type1unavailable1", "GetXML()" ); my $rule2 = $query->AddRule(body=>"body2", continued=>"continued2", drop=>"drop2", edit=>"edit2", error=>"error2", from=>"from2", offline=>"offline2", reply=>"reply2", resource=>"resource2", show=>"show2", size=>"size2", subject=>"subject2", time=>"time2", type=>"type2", unavailable=>"unavailable2", ); ok( defined($rule2), "new()" ); isa_ok( $rule2, "Net::Jabber::Stanza" ); isa_ok( $rule2, "Net::XMPP::Stanza" ); testPostScalar($rule2,"Body","body2"); testPostScalar($rule2,"Continued","continued2"); testPostScalar($rule2,"Drop","drop2"); testPostScalar($rule2,"Edit","edit2"); testPostScalar($rule2,"Error","error2"); testPostScalar($rule2,"From","from2"); testPostScalar($rule2,"Offline","offline2"); testPostScalar($rule2,"Reply","reply2"); testPostScalar($rule2,"Resource","resource2"); testPostScalar($rule2,"Show","show2"); testPostScalar($rule2,"Size","size2"); testPostScalar($rule2,"Subject","subject2"); testPostScalar($rule2,"Time","time2"); testPostScalar($rule2,"Type","type2"); testPostScalar($rule2,"Unavailable","unavailable2"); is( $query->GetXML(), "body1continued1drop1edit1error1from1offline1reply1resource1show1size1subject1type1unavailable1body2continued2drop2edit2error2from2offline2reply2resource2show2size2subject2type2unavailable2", "GetXML()" ); my @rules = $query->GetRules(); is( $#rules, 1, "are there two rules?" ); is( $rules[0]->GetXML(), "body1continued1drop1edit1error1from1offline1reply1resource1show1size1subject1type1unavailable1", "GetXML()" ); is( $rules[1]->GetXML(), "body2continued2drop2edit2error2from2offline2reply2resource2show2size2subject2type2unavailable2", "GetXML()" );