1 #include "fct.h" 2 3 #include "log.h" 4 5 #include "AmSdp.h" 6 7 #define CRLF "\r\n" 8 #define LF "\n" 9 FCTMF_SUITE_BGN(test_sdp)10FCTMF_SUITE_BGN(test_sdp) { 11 12 FCT_TEST_BGN(normal_sdp_ok) { 13 AmSdp s; 14 string sdp = 15 "v=0" CRLF 16 "o=- 3615077380 3615077398 IN IP4 178.66.14.5" CRLF 17 "s=-" CRLF 18 "c=IN IP4 178.66.14.5" CRLF 19 "t=0 0" CRLF 20 "m=audio 21964 RTP/AVP 0 101" CRLF 21 "a=sendrecv" CRLF 22 "a=ptime:20" CRLF 23 "a=rtpmap:0 PCMU/8000" CRLF 24 "a=rtpmap:101 telephone-event/8000" CRLF 25 "a=fmtp:101 0-15" CRLF ; 26 27 fct_chk(!s.parse(sdp.c_str())); 28 fct_chk(s.version==0); 29 fct_chk(s.origin.user == "-"); 30 fct_chk(s.origin.sessId == 3615077380); 31 fct_chk(s.origin.sessV == 3615077398); 32 fct_chk(s.origin.conn.address == "178.66.14.5"); 33 fct_chk(s.origin.conn.network == NT_IN); 34 fct_chk(s.origin.conn.addrType == AT_V4); 35 36 fct_chk(s.conn.address == "178.66.14.5"); 37 fct_chk(s.conn.network == NT_IN); 38 fct_chk(s.conn.addrType == AT_V4); 39 40 fct_chk(s.media.size() == 1); 41 fct_chk(s.media[0].type == MT_AUDIO); 42 fct_chk(s.media[0].port == 21964); 43 fct_chk(s.media[0].transport == TP_RTPAVP); 44 fct_chk(s.media[0].payloads.size()==2); 45 fct_chk(s.media[0].payloads[0].payload_type==0); 46 fct_chk(s.media[0].payloads[1].payload_type==101); 47 fct_chk(s.media[0].payloads[0].encoding_name=="PCMU"); 48 fct_chk(s.media[0].payloads[1].encoding_name=="telephone-event"); 49 } FCT_TEST_END(); 50 51 FCT_TEST_BGN(sdp_LF_no_CRLF) { 52 AmSdp s; 53 string sdp = 54 "v=0" LF 55 "o=- 3615077380 3615077398 IN IP4 178.66.14.5" LF 56 "s=-" LF 57 "c=IN IP4 178.66.14.5" LF 58 "t=0 0" LF 59 "m=audio 21964 RTP/AVP 0 101" LF 60 "a=sendrecv" LF 61 "a=ptime:20" LF 62 "a=rtpmap:0 PCMU/8000" LF 63 "a=rtpmap:101 telephone-event/8000" LF 64 "a=fmtp:101 0-15" LF ; 65 66 fct_chk(!s.parse(sdp.c_str())); 67 fct_chk(s.version==0); 68 fct_chk(s.origin.user == "-"); 69 fct_chk(s.origin.sessId == 3615077380); 70 fct_chk(s.origin.sessV == 3615077398); 71 fct_chk(s.origin.conn.address == "178.66.14.5"); 72 fct_chk(s.origin.conn.network == NT_IN); 73 fct_chk(s.origin.conn.addrType == AT_V4); 74 75 fct_chk(s.conn.address == "178.66.14.5"); 76 fct_chk(s.conn.network == NT_IN); 77 fct_chk(s.conn.addrType == AT_V4); 78 79 fct_chk(s.media.size() == 1); 80 fct_chk(s.media[0].type == MT_AUDIO); 81 fct_chk(s.media[0].port == 21964); 82 fct_chk(s.media[0].transport == TP_RTPAVP); 83 fct_chk(s.media[0].payloads.size()==2); 84 fct_chk(s.media[0].payloads[0].payload_type==0); 85 fct_chk(s.media[0].payloads[1].payload_type==101); 86 fct_chk(s.media[0].payloads[0].encoding_name=="PCMU"); 87 fct_chk(s.media[0].payloads[1].encoding_name=="telephone-event"); 88 } FCT_TEST_END(); 89 90 } FCTMF_SUITE_END(); 91