[Asterisk-code-review] Make tests SILK-ready. (testsuite[master])

Mark Michelson asteriskteam at digium.com
Fri Jul 1 13:06:29 CDT 2016


Mark Michelson has uploaded a new change for review.

  https://gerrit.asterisk.org/3139

Change subject: Make tests SILK-ready.
......................................................................

Make tests SILK-ready.

Addition of SILK understanding to the SDP code has made it so that
Asterisk can now respond to SILK offers. This means the old single audio
stream basic test fails since it does not expect for Asterisk to respond
with SILK payloads.

This commit fixes the issue by placing a maximum version on the basic
test and creating a new version of the test with a minversion of
13.11.0. This new version is exactly the same, except that the SIPp
scenario that tries all codecs now expects for Asterisk to respond with
SILK payloads in the response.

Change-Id: I6eb3a28e0928456e4625bf17219b685b9980bdb4
---
A tests/channels/pjsip/sdp_offer_answer/incoming/nominal/single-media-stream/audio/basic-13-11-plus/.test-config.yaml.swp
A tests/channels/pjsip/sdp_offer_answer/incoming/nominal/single-media-stream/audio/basic-13-11-plus/configs/ast1/extensions.conf
A tests/channels/pjsip/sdp_offer_answer/incoming/nominal/single-media-stream/audio/basic-13-11-plus/configs/ast1/pjsip.conf
A tests/channels/pjsip/sdp_offer_answer/incoming/nominal/single-media-stream/audio/basic-13-11-plus/sipp/.uac-all-codecs.xml.swp
A tests/channels/pjsip/sdp_offer_answer/incoming/nominal/single-media-stream/audio/basic-13-11-plus/sipp/uac-all-codecs.xml
A tests/channels/pjsip/sdp_offer_answer/incoming/nominal/single-media-stream/audio/basic-13-11-plus/sipp/uac-basic-codecs-delayed.xml
A tests/channels/pjsip/sdp_offer_answer/incoming/nominal/single-media-stream/audio/basic-13-11-plus/sipp/uac-basic-codecs-no-rtpmap.xml
A tests/channels/pjsip/sdp_offer_answer/incoming/nominal/single-media-stream/audio/basic-13-11-plus/sipp/uac-basic-codecs-odd-rtpmap.xml
A tests/channels/pjsip/sdp_offer_answer/incoming/nominal/single-media-stream/audio/basic-13-11-plus/sipp/uac-basic-codecs.xml
A tests/channels/pjsip/sdp_offer_answer/incoming/nominal/single-media-stream/audio/basic-13-11-plus/test-config.yaml
M tests/channels/pjsip/sdp_offer_answer/incoming/nominal/single-media-stream/audio/basic/test-config.yaml
M tests/channels/pjsip/sdp_offer_answer/incoming/nominal/single-media-stream/audio/tests.yaml
12 files changed, 581 insertions(+), 0 deletions(-)


  git pull ssh://gerrit.asterisk.org:29418/testsuite refs/changes/39/3139/1

diff --git a/tests/channels/pjsip/sdp_offer_answer/incoming/nominal/single-media-stream/audio/basic-13-11-plus/.test-config.yaml.swp b/tests/channels/pjsip/sdp_offer_answer/incoming/nominal/single-media-stream/audio/basic-13-11-plus/.test-config.yaml.swp
new file mode 100644
index 0000000..d74a0c2
--- /dev/null
+++ b/tests/channels/pjsip/sdp_offer_answer/incoming/nominal/single-media-stream/audio/basic-13-11-plus/.test-config.yaml.swp
Binary files differ
diff --git a/tests/channels/pjsip/sdp_offer_answer/incoming/nominal/single-media-stream/audio/basic-13-11-plus/configs/ast1/extensions.conf b/tests/channels/pjsip/sdp_offer_answer/incoming/nominal/single-media-stream/audio/basic-13-11-plus/configs/ast1/extensions.conf
new file mode 100644
index 0000000..6955acb
--- /dev/null
+++ b/tests/channels/pjsip/sdp_offer_answer/incoming/nominal/single-media-stream/audio/basic-13-11-plus/configs/ast1/extensions.conf
@@ -0,0 +1,5 @@
+[default]
+
+exten => answer,1,NoOp()
+ same => n,Answer()
+ same => n,Hangup()
diff --git a/tests/channels/pjsip/sdp_offer_answer/incoming/nominal/single-media-stream/audio/basic-13-11-plus/configs/ast1/pjsip.conf b/tests/channels/pjsip/sdp_offer_answer/incoming/nominal/single-media-stream/audio/basic-13-11-plus/configs/ast1/pjsip.conf
new file mode 100644
index 0000000..1ee9cf2
--- /dev/null
+++ b/tests/channels/pjsip/sdp_offer_answer/incoming/nominal/single-media-stream/audio/basic-13-11-plus/configs/ast1/pjsip.conf
@@ -0,0 +1,18 @@
+[local-transport-udp]
+type=transport
+bind=127.0.0.1
+protocol=udp
+
+[endpoint-template](!)
+type=endpoint
+context=default
+media_address=127.0.0.1
+
+[alice-codec-match](endpoint-template)
+allow=!all,g722,ulaw,alaw
+
+[alice-codec-all](endpoint-template)
+allow=all
+
+[alice-codec-extended](endpoint-template)
+allow=!all,g722,ulaw,alaw,ilbc,opus
diff --git a/tests/channels/pjsip/sdp_offer_answer/incoming/nominal/single-media-stream/audio/basic-13-11-plus/sipp/.uac-all-codecs.xml.swp b/tests/channels/pjsip/sdp_offer_answer/incoming/nominal/single-media-stream/audio/basic-13-11-plus/sipp/.uac-all-codecs.xml.swp
new file mode 100644
index 0000000..254f205
--- /dev/null
+++ b/tests/channels/pjsip/sdp_offer_answer/incoming/nominal/single-media-stream/audio/basic-13-11-plus/sipp/.uac-all-codecs.xml.swp
Binary files differ
diff --git a/tests/channels/pjsip/sdp_offer_answer/incoming/nominal/single-media-stream/audio/basic-13-11-plus/sipp/uac-all-codecs.xml b/tests/channels/pjsip/sdp_offer_answer/incoming/nominal/single-media-stream/audio/basic-13-11-plus/sipp/uac-all-codecs.xml
new file mode 100644
index 0000000..5a7e9f7
--- /dev/null
+++ b/tests/channels/pjsip/sdp_offer_answer/incoming/nominal/single-media-stream/audio/basic-13-11-plus/sipp/uac-all-codecs.xml
@@ -0,0 +1,122 @@
+<?xml version="1.0" encoding="ISO-8859-1" ?>
+<!DOCTYPE scenario SYSTEM "sipp.dtd">
+
+<scenario name="Basic Sipstone UAC">
+  <send retrans="500">
+    <![CDATA[
+
+      INVITE sip:answer@[remote_ip]:[remote_port] SIP/2.0
+      Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch]
+      From: alice-codec-match <sip:[service]@[local_ip]:[local_port]>;tag=[pid]SIPpTag00[call_number]
+      To: sut <sip:test@[remote_ip]:[remote_port]>
+      Call-ID: [call_id]
+      CSeq: 1 INVITE
+      Contact: sip:test@[local_ip]:[local_port]
+      Max-Forwards: 70
+      Subject: Codec test
+      Content-Type: application/sdp
+      Content-Length: [len]
+
+      v=0
+      o=user1 53655765 2353687637 IN IP[local_ip_type] [local_ip]
+      s=-
+      c=IN IP[media_ip_type] [media_ip]
+      t=0 0
+      m=audio 6000 RTP/AVP 0 3 4 5 7 8 9 10 18 97 101 102 107 108 110 111 112 115 116 117
+      a=rtpmap:0 PCMU/8000
+      a=rtpmap:3 GSM/8000
+      a=rtpmap:4 G723/8000
+      a=fmtp:4 annexa=no
+      a=rtpmap:5 DVI4/8000
+      a=rtpmap:7 LPC/8000
+      a=rtpmap:8 PCMA/8000
+      a=rtpmap:9 G722/8000
+      a=rtpmap:10 L16/8000
+      a=rtpmap:18 G729/8000
+      a=fmtp:18 annexb=no
+      a=rtpmap:97 iLBC/8000
+      a=fmtp:97 mode=30
+      a=rtpmap:101 telephone-event/8000
+      a=rtpmap:102 G7221/16000
+      a=fmtp:102 bitrate=32000
+      a=rtpmap:107 SILK/16000
+      a=fmtp:107 maxaveragebitrate=20000
+      a=fmtp:107 usedtx=0
+      a=fmtp:107 useinbandfec=1
+      a=rtpmap:108 SILK/24000
+      a=fmtp:108 maxaveragebitrate=30000
+      a=fmtp:108 usedtx=0
+      a=fmtp:108 useinbandfec=1
+      a=rtpmap:110 speex/8000
+      a=rtpmap:111 G726-32/8000
+      a=rtpmap:112 AAL2-G726-32/8000
+      a=rtpmap:115 G7221/32000
+      a=fmtp:115 bitrate=48000
+      a=rtpmap:116 G719/48000
+      a=fmtp:116 bitrate=64000
+      a=rtpmap:117 speex/16000
+
+    ]]>
+  </send>
+
+  <recv response="100" optional="true">
+  </recv>
+
+  <recv response="181" optional="true">
+  </recv>
+
+  <recv response="180" optional="true">
+  </recv>
+
+  <recv response="183" optional="true">
+  </recv>
+
+  <recv response="200" rtd="true">
+    <action>
+      <ereg regexp="m=audio [0-9]{1,5} RTP/AVP 4 0 8 3 111 112 5 10 7 18 110 117 97 9 102 115 116 107 108 101+..*"
+            search_in="body" check_it="true" assign_to="1"/>
+      <test assign_to="1" variable="1" compare="equal" value=""/>
+    </action>
+  </recv>
+
+  <send>
+    <![CDATA[
+
+      ACK sip:answer@[remote_ip]:[remote_port] SIP/2.0
+      Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch]
+      From: alice-codec-match <sip:[service]@[local_ip]:[local_port]>;tag=[pid]SIPpTag00[call_number]
+      To: sut <sip:test@[remote_ip]:[remote_port]>[peer_tag_param]
+      Call-ID: [call_id]
+      CSeq: 1 ACK
+      Contact: sip:alice-codec-match@[local_ip]:[local_port]
+      Max-Forwards: 70
+      Subject: Performance Test
+      Content-Length: 0
+
+    ]]>
+  </send>
+
+  <recv request="BYE">
+  </recv>
+
+  <send>
+    <![CDATA[
+
+      SIP/2.0 200 OK
+      [last_Via:]
+      [last_From:]
+      [last_To:]
+      [last_Call-ID:]
+      [last_CSeq:]
+      Contact: <sip:[local_ip]:[local_port];transport=[transport]>
+      Content-Length: 0
+
+    ]]>
+  </send>
+
+  <ResponseTimeRepartition value="10, 20, 30, 40, 50, 100, 150, 200"/>
+
+  <CallLengthRepartition value="10, 50, 100, 500, 1000, 5000, 10000"/>
+
+</scenario>
+
diff --git a/tests/channels/pjsip/sdp_offer_answer/incoming/nominal/single-media-stream/audio/basic-13-11-plus/sipp/uac-basic-codecs-delayed.xml b/tests/channels/pjsip/sdp_offer_answer/incoming/nominal/single-media-stream/audio/basic-13-11-plus/sipp/uac-basic-codecs-delayed.xml
new file mode 100644
index 0000000..09021f3
--- /dev/null
+++ b/tests/channels/pjsip/sdp_offer_answer/incoming/nominal/single-media-stream/audio/basic-13-11-plus/sipp/uac-basic-codecs-delayed.xml
@@ -0,0 +1,95 @@
+<?xml version="1.0" encoding="ISO-8859-1" ?>
+<!DOCTYPE scenario SYSTEM "sipp.dtd">
+
+<scenario name="Basic Sipstone UAC">
+  <send retrans="500">
+    <![CDATA[
+
+      INVITE sip:answer@[remote_ip]:[remote_port] SIP/2.0
+      Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch]
+      From: alice-codec-match <sip:[service]@[local_ip]:[local_port]>;tag=[pid]SIPpTag00[call_number]
+      To: sut <sip:test@[remote_ip]:[remote_port]>
+      Call-ID: [call_id]
+      CSeq: 1 INVITE
+      Contact: sip:test@[local_ip]:[local_port]
+      Max-Forwards: 70
+      Subject: Codec test
+      Content-Type: application/sdp
+      Content-Length: 0
+
+    ]]>
+  </send>
+
+  <recv response="100" optional="true">
+  </recv>
+
+  <recv response="181" optional="true">
+  </recv>
+
+  <recv response="180" optional="true">
+  </recv>
+
+  <recv response="183" optional="true">
+  </recv>
+
+  <recv response="200" rtd="true">
+    <action>
+      <ereg regexp="m=audio [0-9]{1,5} RTP/AVP 9 0 8 101+..*"
+            search_in="body" check_it="true" assign_to="1"/>
+      <test assign_to="1" variable="1" compare="equal" value=""/>
+    </action>
+  </recv>
+
+  <send>
+    <![CDATA[
+
+      ACK sip:answer@[remote_ip]:[remote_port] SIP/2.0
+      Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch]
+      From: alice-codec-match <sip:[service]@[local_ip]:[local_port]>;tag=[pid]SIPpTag00[call_number]
+      To: sut <sip:test@[remote_ip]:[remote_port]>[peer_tag_param]
+      Call-ID: [call_id]
+      CSeq: 1 ACK
+      Contact: sip:alice-codec-match@[local_ip]:[local_port]
+      Max-Forwards: 70
+      Subject: Performance Test
+      Content-Length: [len]
+
+      v=0
+      o=user1 53655765 2353687637 IN IP[local_ip_type] [local_ip]
+      s=-
+      c=IN IP[media_ip_type] [media_ip]
+      t=0 0
+      m=audio 6000 RTP/AVP 9 0 8 101
+      a=rtpmap:0 PCMU/8000
+      a=rtpmap:8 PCMA/8000
+      a=rtpmap:9 G722/8000
+      a=rtpmap:101 telephone-event/8000
+      a=fmtp:101 0-16
+
+    ]]>
+  </send>
+
+  <recv request="BYE">
+  </recv>
+
+  <send>
+    <![CDATA[
+
+      SIP/2.0 200 OK
+      [last_Via:]
+      [last_From:]
+      [last_To:]
+      [last_Call-ID:]
+      [last_CSeq:]
+      Contact: <sip:[local_ip]:[local_port];transport=[transport]>
+      Content-Length: 0
+
+    ]]>
+  </send>
+
+  <ResponseTimeRepartition value="10, 20, 30, 40, 50, 100, 150, 200"/>
+
+  <CallLengthRepartition value="10, 50, 100, 500, 1000, 5000, 10000"/>
+
+</scenario>
+
diff --git a/tests/channels/pjsip/sdp_offer_answer/incoming/nominal/single-media-stream/audio/basic-13-11-plus/sipp/uac-basic-codecs-no-rtpmap.xml b/tests/channels/pjsip/sdp_offer_answer/incoming/nominal/single-media-stream/audio/basic-13-11-plus/sipp/uac-basic-codecs-no-rtpmap.xml
new file mode 100644
index 0000000..013f893
--- /dev/null
+++ b/tests/channels/pjsip/sdp_offer_answer/incoming/nominal/single-media-stream/audio/basic-13-11-plus/sipp/uac-basic-codecs-no-rtpmap.xml
@@ -0,0 +1,92 @@
+<?xml version="1.0" encoding="ISO-8859-1" ?>
+<!DOCTYPE scenario SYSTEM "sipp.dtd">
+
+<scenario name="Basic Sipstone UAC">
+  <send retrans="500">
+    <![CDATA[
+
+      INVITE sip:answer@[remote_ip]:[remote_port] SIP/2.0
+      Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch]
+      From: alice-codec-match <sip:[service]@[local_ip]:[local_port]>;tag=[pid]SIPpTag00[call_number]
+      To: sut <sip:test@[remote_ip]:[remote_port]>
+      Call-ID: [call_id]
+      CSeq: 1 INVITE
+      Contact: sip:test@[local_ip]:[local_port]
+      Max-Forwards: 70
+      Subject: Codec test
+      Content-Type: application/sdp
+      Content-Length: [len]
+
+      v=0
+      o=user1 53655765 2353687637 IN IP[local_ip_type] [local_ip]
+      s=-
+      c=IN IP[media_ip_type] [media_ip]
+      t=0 0
+      m=audio 6000 RTP/AVP 9 0 8 101
+      a=rtpmap:101 telephone-event/8000
+      a=fmtp:101 0-16
+
+    ]]>
+  </send>
+
+  <recv response="100" optional="true">
+  </recv>
+
+  <recv response="181" optional="true">
+  </recv>
+
+  <recv response="180" optional="true">
+  </recv>
+
+  <recv response="183" optional="true">
+  </recv>
+
+  <recv response="200" rtd="true">
+    <action>
+      <ereg regexp="m=audio [0-9]{1,5} RTP/AVP 9 0 8 101+..*"
+            search_in="body" check_it="true" assign_to="1"/>
+      <test assign_to="1" variable="1" compare="equal" value=""/>
+    </action>
+  </recv>
+
+  <send>
+    <![CDATA[
+
+      ACK sip:answer@[remote_ip]:[remote_port] SIP/2.0
+      Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch]
+      From: alice-codec-match <sip:[service]@[local_ip]:[local_port]>;tag=[pid]SIPpTag00[call_number]
+      To: sut <sip:test@[remote_ip]:[remote_port]>[peer_tag_param]
+      Call-ID: [call_id]
+      CSeq: 1 ACK
+      Contact: sip:alice-codec-match@[local_ip]:[local_port]
+      Max-Forwards: 70
+      Subject: Performance Test
+      Content-Length: 0
+
+    ]]>
+  </send>
+
+  <recv request="BYE">
+  </recv>
+
+  <send>
+    <![CDATA[
+
+      SIP/2.0 200 OK
+      [last_Via:]
+      [last_From:]
+      [last_To:]
+      [last_Call-ID:]
+      [last_CSeq:]
+      Contact: <sip:[local_ip]:[local_port];transport=[transport]>
+      Content-Length: 0
+
+    ]]>
+  </send>
+
+  <ResponseTimeRepartition value="10, 20, 30, 40, 50, 100, 150, 200"/>
+
+  <CallLengthRepartition value="10, 50, 100, 500, 1000, 5000, 10000"/>
+
+</scenario>
+
diff --git a/tests/channels/pjsip/sdp_offer_answer/incoming/nominal/single-media-stream/audio/basic-13-11-plus/sipp/uac-basic-codecs-odd-rtpmap.xml b/tests/channels/pjsip/sdp_offer_answer/incoming/nominal/single-media-stream/audio/basic-13-11-plus/sipp/uac-basic-codecs-odd-rtpmap.xml
new file mode 100644
index 0000000..2cef12f
--- /dev/null
+++ b/tests/channels/pjsip/sdp_offer_answer/incoming/nominal/single-media-stream/audio/basic-13-11-plus/sipp/uac-basic-codecs-odd-rtpmap.xml
@@ -0,0 +1,95 @@
+<?xml version="1.0" encoding="ISO-8859-1" ?>
+<!DOCTYPE scenario SYSTEM "sipp.dtd">
+
+<scenario name="Basic Sipstone UAC">
+  <send retrans="500">
+    <![CDATA[
+
+      INVITE sip:answer@[remote_ip]:[remote_port] SIP/2.0
+      Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch]
+      From: alice-codec-match <sip:[service]@[local_ip]:[local_port]>;tag=[pid]SIPpTag00[call_number]
+      To: sut <sip:test@[remote_ip]:[remote_port]>
+      Call-ID: [call_id]
+      CSeq: 1 INVITE
+      Contact: sip:test@[local_ip]:[local_port]
+      Max-Forwards: 70
+      Subject: Codec test
+      Content-Type: application/sdp
+      Content-Length: [len]
+
+      v=0
+      o=user1 53655765 2353687637 IN IP[local_ip_type] [local_ip]
+      s=-
+      c=IN IP[media_ip_type] [media_ip]
+      t=0 0
+      m=audio 6000 RTP/AVP 12 13 16 99
+      a=rtpmap:12 G722/8000
+      a=rtpmap:13 PCMU/8000
+      a=rtpmap:16 PCMA/8000
+      a=rtpmap:99 telephone-event/8000
+      a=fmtp:99 0-16
+
+    ]]>
+  </send>
+
+  <recv response="100" optional="true">
+  </recv>
+
+  <recv response="181" optional="true">
+  </recv>
+
+  <recv response="180" optional="true">
+  </recv>
+
+  <recv response="183" optional="true">
+  </recv>
+
+  <recv response="200" rtd="true">
+    <action>
+      <ereg regexp="m=audio [0-9]{1,5} RTP/AVP 12 13 16 99+..*"
+            search_in="body" check_it="true" assign_to="1"/>
+      <test assign_to="1" variable="1" compare="equal" value=""/>
+    </action>
+  </recv>
+
+  <send>
+    <![CDATA[
+
+      ACK sip:answer@[remote_ip]:[remote_port] SIP/2.0
+      Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch]
+      From: alice-codec-match <sip:[service]@[local_ip]:[local_port]>;tag=[pid]SIPpTag00[call_number]
+      To: sut <sip:test@[remote_ip]:[remote_port]>[peer_tag_param]
+      Call-ID: [call_id]
+      CSeq: 1 ACK
+      Contact: sip:alice-codec-match@[local_ip]:[local_port]
+      Max-Forwards: 70
+      Subject: Performance Test
+      Content-Length: 0
+
+    ]]>
+  </send>
+
+  <recv request="BYE">
+  </recv>
+
+  <send>
+    <![CDATA[
+
+      SIP/2.0 200 OK
+      [last_Via:]
+      [last_From:]
+      [last_To:]
+      [last_Call-ID:]
+      [last_CSeq:]
+      Contact: <sip:[local_ip]:[local_port];transport=[transport]>
+      Content-Length: 0
+
+    ]]>
+  </send>
+
+  <ResponseTimeRepartition value="10, 20, 30, 40, 50, 100, 150, 200"/>
+
+  <CallLengthRepartition value="10, 50, 100, 500, 1000, 5000, 10000"/>
+
+</scenario>
+
diff --git a/tests/channels/pjsip/sdp_offer_answer/incoming/nominal/single-media-stream/audio/basic-13-11-plus/sipp/uac-basic-codecs.xml b/tests/channels/pjsip/sdp_offer_answer/incoming/nominal/single-media-stream/audio/basic-13-11-plus/sipp/uac-basic-codecs.xml
new file mode 100644
index 0000000..4458098
--- /dev/null
+++ b/tests/channels/pjsip/sdp_offer_answer/incoming/nominal/single-media-stream/audio/basic-13-11-plus/sipp/uac-basic-codecs.xml
@@ -0,0 +1,95 @@
+<?xml version="1.0" encoding="ISO-8859-1" ?>
+<!DOCTYPE scenario SYSTEM "sipp.dtd">
+
+<scenario name="Basic Sipstone UAC">
+  <send retrans="500">
+    <![CDATA[
+
+      INVITE sip:answer@[remote_ip]:[remote_port] SIP/2.0
+      Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch]
+      From: alice-codec-match <sip:[service]@[local_ip]:[local_port]>;tag=[pid]SIPpTag00[call_number]
+      To: sut <sip:test@[remote_ip]:[remote_port]>
+      Call-ID: [call_id]
+      CSeq: 1 INVITE
+      Contact: sip:test@[local_ip]:[local_port]
+      Max-Forwards: 70
+      Subject: Codec test
+      Content-Type: application/sdp
+      Content-Length: [len]
+
+      v=0
+      o=user1 53655765 2353687637 IN IP[local_ip_type] [local_ip]
+      s=-
+      c=IN IP[media_ip_type] [media_ip]
+      t=0 0
+      m=audio 6000 RTP/AVP 9 0 8 101
+      a=rtpmap:0 PCMU/8000
+      a=rtpmap:8 PCMA/8000
+      a=rtpmap:9 G722/8000
+      a=rtpmap:101 telephone-event/8000
+      a=fmtp:101 0-16
+
+    ]]>
+  </send>
+
+  <recv response="100" optional="true">
+  </recv>
+
+  <recv response="181" optional="true">
+  </recv>
+
+  <recv response="180" optional="true">
+  </recv>
+
+  <recv response="183" optional="true">
+  </recv>
+
+  <recv response="200" rtd="true">
+    <action>
+      <ereg regexp="m=audio [0-9]{1,5} RTP/AVP 9 0 8 101+..*"
+            search_in="body" check_it="true" assign_to="1"/>
+      <test assign_to="1" variable="1" compare="equal" value=""/>
+    </action>
+  </recv>
+
+  <send>
+    <![CDATA[
+
+      ACK sip:answer@[remote_ip]:[remote_port] SIP/2.0
+      Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch]
+      From: alice-codec-match <sip:[service]@[local_ip]:[local_port]>;tag=[pid]SIPpTag00[call_number]
+      To: sut <sip:test@[remote_ip]:[remote_port]>[peer_tag_param]
+      Call-ID: [call_id]
+      CSeq: 1 ACK
+      Contact: sip:alice-codec-match@[local_ip]:[local_port]
+      Max-Forwards: 70
+      Subject: Performance Test
+      Content-Length: 0
+
+    ]]>
+  </send>
+
+  <recv request="BYE">
+  </recv>
+
+  <send>
+    <![CDATA[
+
+      SIP/2.0 200 OK
+      [last_Via:]
+      [last_From:]
+      [last_To:]
+      [last_Call-ID:]
+      [last_CSeq:]
+      Contact: <sip:[local_ip]:[local_port];transport=[transport]>
+      Content-Length: 0
+
+    ]]>
+  </send>
+
+  <ResponseTimeRepartition value="10, 20, 30, 40, 50, 100, 150, 200"/>
+
+  <CallLengthRepartition value="10, 50, 100, 500, 1000, 5000, 10000"/>
+
+</scenario>
+
diff --git a/tests/channels/pjsip/sdp_offer_answer/incoming/nominal/single-media-stream/audio/basic-13-11-plus/test-config.yaml b/tests/channels/pjsip/sdp_offer_answer/incoming/nominal/single-media-stream/audio/basic-13-11-plus/test-config.yaml
new file mode 100644
index 0000000..7ca2bc3
--- /dev/null
+++ b/tests/channels/pjsip/sdp_offer_answer/incoming/nominal/single-media-stream/audio/basic-13-11-plus/test-config.yaml
@@ -0,0 +1,57 @@
+testinfo:
+    summary:     'Test basic offer/answer with a single audio media stream'
+    description: |
+        This tests several scenarios, each of which offer a single audio
+        media stream:
+        1. Offer a silly amount of codecs to an endpoint configured with
+           allow=all. Expect a silly amount back in the order that they
+           are defined in Asterisk.
+        2. Offer a set of codecs in the priority order defined for the
+           endpoint, where the set of codecs offered is the same set
+           that is configured for the endpoint. Get back the codecs
+           in the order specified for the endpoint.
+        3. Offer a set of codecs that is a subset of the configured
+           codecs on the endpoint. Verify that we get an answer with
+           only the codecs offered, but in the priority order of the
+           endpoint.
+        4. Offer a set of codecs with no rtpmap for standard codecs. Expect
+           something back (in this case, we get an answer that the media
+           stream was accepted).
+        5. Offer a set of codecs with an odd RTP number mapping. Get back
+           an answer that supports our silly choices.
+        6. Send an INVITE request, but include no SDP. Asterisk will send
+           an offer with the 200 OK response, at which point the UAC sends
+           an answer.
+
+test-modules:
+    test-object:
+        config-section: test-object-config
+        typename: 'sipp.SIPpTestCase'
+
+test-object-config:
+    reactor-timeout: 80
+    fail-on-any: False
+    test-iterations:
+        -
+            scenarios:
+                - { 'key-args': {'scenario': 'uac-all-codecs.xml', '-i': '127.0.0.1', '-p': '5062', '-s': 'alice-codec-all', } }
+                - { 'key-args': {'scenario': 'uac-basic-codecs.xml', '-i': '127.0.0.1', '-p': '5061', '-s': 'alice-codec-match', } }
+                - { 'key-args': {'scenario': 'uac-basic-codecs.xml', '-i': '127.0.0.1', '-p': '5063', '-s': 'alice-codec-extended', } }
+        -
+            scenarios:
+                - { 'key-args': {'scenario': 'uac-basic-codecs-no-rtpmap.xml', '-i': '127.0.0.1', '-p': '5061', '-s': 'alice-codec-match', } }
+        -
+            scenarios:
+                - { 'key-args': {'scenario': 'uac-basic-codecs-odd-rtpmap.xml', '-i': '127.0.0.1', '-p': '5061', '-s': 'alice-codec-match', } }
+        -
+            scenarios:
+                - { 'key-args': {'scenario': 'uac-basic-codecs-delayed.xml', '-i': '127.0.0.1', '-p': '5061', '-s': 'alice-codec-match', } }
+
+properties:
+    minversion: '13.11.0'
+    dependencies:
+        - sipp :
+            version : 'v3.0'
+        - asterisk : 'res_pjsip'
+    tags:
+        - pjsip
diff --git a/tests/channels/pjsip/sdp_offer_answer/incoming/nominal/single-media-stream/audio/basic/test-config.yaml b/tests/channels/pjsip/sdp_offer_answer/incoming/nominal/single-media-stream/audio/basic/test-config.yaml
index 0ca45d8..f81f386 100644
--- a/tests/channels/pjsip/sdp_offer_answer/incoming/nominal/single-media-stream/audio/basic/test-config.yaml
+++ b/tests/channels/pjsip/sdp_offer_answer/incoming/nominal/single-media-stream/audio/basic/test-config.yaml
@@ -49,6 +49,7 @@
 
 properties:
     minversion: '13.0.0'
+    maxversion: '13.11.0'
     dependencies:
         - sipp :
             version : 'v3.0'
diff --git a/tests/channels/pjsip/sdp_offer_answer/incoming/nominal/single-media-stream/audio/tests.yaml b/tests/channels/pjsip/sdp_offer_answer/incoming/nominal/single-media-stream/audio/tests.yaml
index 2025ec2..8a4b07e 100644
--- a/tests/channels/pjsip/sdp_offer_answer/incoming/nominal/single-media-stream/audio/tests.yaml
+++ b/tests/channels/pjsip/sdp_offer_answer/incoming/nominal/single-media-stream/audio/tests.yaml
@@ -3,3 +3,4 @@
     - test: 'avpf'
     - test: 'basic'
     - test: 'packetization'
+    - test: 'basic-13-11-plus'

-- 
To view, visit https://gerrit.asterisk.org/3139
To unsubscribe, visit https://gerrit.asterisk.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I6eb3a28e0928456e4625bf17219b685b9980bdb4
Gerrit-PatchSet: 1
Gerrit-Project: testsuite
Gerrit-Branch: master
Gerrit-Owner: Mark Michelson <mmichelson at digium.com>



More information about the asterisk-code-review mailing list