|
reSIProcate/stack
9694
|
#include "rutil/DataStream.hxx"#include "resip/stack/SipMessage.hxx"#include "resip/stack/Helper.hxx"#include "resip/stack/Uri.hxx"#include "resip/stack/ApplicationSip.hxx"#include "TestSupport.hxx"#include <iostream>#include <memory>
Go to the source code of this file.
Functions | |
| int | main () |
| int main | ( | void | ) |
Definition at line 16 of file testApplicationSip.cxx.
References resip::Data::c_str(), resip::LazyParser::encode(), resip::SipMessage::exists(), resip::Contents::getContents(), resip::SipMessage::header(), resip::TestSupport::makeMessage(), resip::SipFrag::message(), resipCerr, resip::RequestLine::uri(), and resip::Uri::user().
{
{
Data txt("INVITE sip:bob@biloxi.com SIP/2.0\r\n"
"Via: SIP/2.0/UDP pc33.atlanta.com;branch=z9hG4bKnashds8\r\n"
"To: Bob <sip:bob@biloxi.com>\r\n"
"From: Alice <sip:alice@atlanta.com>;tag=1928301774\r\n"
"Call-ID: a84b4c76e66710\r\n"
"CSeq: 314159 INVITE\r\n"
"Max-Forwards: 70\r\n"
"Contact: <sip:alice@pc33.atlanta.com>\r\n"
"Content-Type: application/sip\r\n"
"Content-Length: 35\r\n"
"\r\n"
"INVITE sip:bob@biloxi.com SIP/2.0\r\n");
auto_ptr<SipMessage> msg(TestSupport::makeMessage(txt.c_str()));
Contents* body = msg->getContents();
assert(body != 0);
ApplicationSip* frag = dynamic_cast<ApplicationSip*>(body);
assert(frag != 0);
std::cerr << "!! ";
frag->encode(resipCerr);
assert(frag->message().header(h_RequestLine).uri().user() == "bob");
msg->encode(resipCerr);
}
{
Data txt("INVITE sip:bob@biloxi.com SIP/2.0\r\n"
"Via: SIP/2.0/UDP pc33.atlanta.com;branch=z9hG4bKnashds8\r\n"
"To: Bob <sip:bob@biloxi.com>\r\n"
"From: Alice <sip:alice@atlanta.com>;tag=1928301774\r\n"
"Call-ID: a84b4c76e66710\r\n"
"CSeq: 314159 INVITE\r\n"
"Max-Forwards: 70\r\n"
"Contact: <sip:alice@pc33.atlanta.com>\r\n"
"Content-Type: application/sip\r\n"
"\r\n"
"INVITE sip:bob@biloxi.com SIP/2.0\r\n"
"From: Alice <sip:alice@atlanta.com>\r\n"
"To: Bob <sip:bob@biloxi.com>\r\n"
"Contact: <sip:alice@pc33.atlanta.com>\r\n"
"Date: Thu, 21 Feb 2002 13:02:03 GMT\r\n"
"Call-ID: a84b4c76e66710\r\n"
"Cseq: 314159 INVITE\r\n\r\n");
auto_ptr<SipMessage> msg(TestSupport::makeMessage(txt.c_str()));
Contents* body = msg->getContents();
assert(body != 0);
ApplicationSip* frag = dynamic_cast<ApplicationSip*>(body);
assert(frag != 0);
std::cerr << "!! ";
frag->encode(resipCerr);
assert(frag->message().exists(h_From));
assert(frag->message().header(h_From).uri().user() == "alice");
assert(frag->message().exists(h_CSeq));
assert(frag->message().header(h_CSeq).sequence() == 314159);
msg->encode(resipCerr);
}
// backward compatibiltiy with SipFrag
{
Data txt("INVITE sip:bob@biloxi.com SIP/2.0\r\n"
"Via: SIP/2.0/UDP pc33.atlanta.com;branch=z9hG4bKnashds8\r\n"
"To: Bob <sip:bob@biloxi.com>\r\n"
"From: Alice <sip:alice@atlanta.com>;tag=1928301774\r\n"
"Call-ID: a84b4c76e66710\r\n"
"CSeq: 314159 INVITE\r\n"
"Max-Forwards: 70\r\n"
"Contact: <sip:alice@pc33.atlanta.com>\r\n"
"Content-Type: application/sip\r\n"
"\r\n"
"INVITE sip:bob@biloxi.com SIP/2.0\r\n"
"From: Alice <sip:alice@atlanta.com>\r\n"
"To: Bob <sip:bob@biloxi.com>\r\n"
"Contact: <sip:alice@pc33.atlanta.com>\r\n"
"Date: Thu, 21 Feb 2002 13:02:03 GMT\r\n"
"Call-ID: a84b4c76e66710\r\n"
"Cseq: 314159 INVITE\r\n\r\n");
auto_ptr<SipMessage> msg(TestSupport::makeMessage(txt.c_str()));
Contents* body = msg->getContents();
assert(body != 0);
SipFrag* frag = dynamic_cast<SipFrag*>(body);
assert(frag != 0);
std::cerr << "!! ";
frag->encode(resipCerr);
assert(frag->message().exists(h_From));
assert(frag->message().header(h_From).uri().user() == "alice");
assert(frag->message().exists(h_CSeq));
assert(frag->message().header(h_CSeq).sequence() == 314159);
msg->encode(resipCerr);
}
cerr << "\nTEST OK" << endl;
return 0;
}

1.7.5.1