<p>sungtae kim has uploaded this change for <strong>review</strong>.</p><p><a href="https://gerrit.asterisk.org/c/testsuite/+/11329">View Change</a></p><pre style="font-family: monospace,monospace; white-space: pre-wrap;">testsuite: Added testcase for channels/{channelId}/rtp_statistics<br><br>Added basic testcase for rtp_statistics.<br><br>ASTERISK-28320<br><br>Change-Id: Ie41127219a4fccc183f9374fbcb768835a7d2bb2<br>---<br>A tests/rest_api/channels/rtp_statistics/basic/configs/ast1/extensions.conf<br>A tests/rest_api/channels/rtp_statistics/basic/test-config.yaml<br>M tests/rest_api/channels/tests.yaml<br>3 files changed, 130 insertions(+), 0 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;">git pull ssh://gerrit.asterisk.org:29418/testsuite refs/changes/29/11329/1</pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/tests/rest_api/channels/rtp_statistics/basic/configs/ast1/extensions.conf b/tests/rest_api/channels/rtp_statistics/basic/configs/ast1/extensions.conf</span><br><span>new file mode 100644</span><br><span>index 0000000..59c7f03</span><br><span>--- /dev/null</span><br><span>+++ b/tests/rest_api/channels/rtp_statistics/basic/configs/ast1/extensions.conf</span><br><span>@@ -0,0 +1,6 @@</span><br><span style="color: hsl(120, 100%, 40%);">+[default]</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+exten => s,1,NoOp()</span><br><span style="color: hsl(120, 100%, 40%);">+ same => n,Answer()</span><br><span style="color: hsl(120, 100%, 40%);">+ same => n,Echo()</span><br><span style="color: hsl(120, 100%, 40%);">+   same => n,Hangup()</span><br><span>diff --git a/tests/rest_api/channels/rtp_statistics/basic/test-config.yaml b/tests/rest_api/channels/rtp_statistics/basic/test-config.yaml</span><br><span>new file mode 100644</span><br><span>index 0000000..2032c76</span><br><span>--- /dev/null</span><br><span>+++ b/tests/rest_api/channels/rtp_statistics/basic/test-config.yaml</span><br><span>@@ -0,0 +1,123 @@</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+testinfo:</span><br><span style="color: hsl(120, 100%, 40%);">+    summary: 'Test rtp_statistics'</span><br><span style="color: hsl(120, 100%, 40%);">+    description: |</span><br><span style="color: hsl(120, 100%, 40%);">+        'This attempts to test basic functionality of</span><br><span style="color: hsl(120, 100%, 40%);">+        /ari/channels/{channelId}/rtp_statistics ARI.</span><br><span style="color: hsl(120, 100%, 40%);">+        * Originate a channel</span><br><span style="color: hsl(120, 100%, 40%);">+        * Playback an audio file</span><br><span style="color: hsl(120, 100%, 40%);">+        * Get rtp statistics</span><br><span style="color: hsl(120, 100%, 40%);">+        * Pause it</span><br><span style="color: hsl(120, 100%, 40%);">+        * Unpause it</span><br><span style="color: hsl(120, 100%, 40%);">+        * Rewind it</span><br><span style="color: hsl(120, 100%, 40%);">+        * Delete the playback</span><br><span style="color: hsl(120, 100%, 40%);">+        * Delete the channel</span><br><span style="color: hsl(120, 100%, 40%);">+        * Validate all the events'</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+properties:</span><br><span style="color: hsl(120, 100%, 40%);">+    dependencies:</span><br><span style="color: hsl(120, 100%, 40%);">+        - python : autobahn.websocket</span><br><span style="color: hsl(120, 100%, 40%);">+        - python : requests</span><br><span style="color: hsl(120, 100%, 40%);">+        - python : twisted</span><br><span style="color: hsl(120, 100%, 40%);">+        - python : starpy</span><br><span style="color: hsl(120, 100%, 40%);">+        - asterisk : res_ari_channels</span><br><span style="color: hsl(120, 100%, 40%);">+        - asterisk : app_echo</span><br><span style="color: hsl(120, 100%, 40%);">+    tags:</span><br><span style="color: hsl(120, 100%, 40%);">+        - ARI</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+test-modules:</span><br><span style="color: hsl(120, 100%, 40%);">+    test-object:</span><br><span style="color: hsl(120, 100%, 40%);">+        config-section: test-object-config</span><br><span style="color: hsl(120, 100%, 40%);">+        typename: ari.AriOriginateTestObject</span><br><span style="color: hsl(120, 100%, 40%);">+    modules:</span><br><span style="color: hsl(120, 100%, 40%);">+        -</span><br><span style="color: hsl(120, 100%, 40%);">+            config-section: ari-config</span><br><span style="color: hsl(120, 100%, 40%);">+            typename: ari.WebSocketEventModule</span><br><span style="color: hsl(120, 100%, 40%);">+        -</span><br><span style="color: hsl(120, 100%, 40%);">+            config-section: ari-test-stopper</span><br><span style="color: hsl(120, 100%, 40%);">+            typename: pluggable_modules.EventActionModule</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+test-object-config:</span><br><span style="color: hsl(120, 100%, 40%);">+    stop-on-end: False</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+ari-test-stopper:</span><br><span style="color: hsl(120, 100%, 40%);">+    -</span><br><span style="color: hsl(120, 100%, 40%);">+        ari-events:</span><br><span style="color: hsl(120, 100%, 40%);">+            match:</span><br><span style="color: hsl(120, 100%, 40%);">+                type: ChannelDestroyed</span><br><span style="color: hsl(120, 100%, 40%);">+                application: testsuite</span><br><span style="color: hsl(120, 100%, 40%);">+                channel:</span><br><span style="color: hsl(120, 100%, 40%);">+                    id: 'testsuite-default-id$'</span><br><span style="color: hsl(120, 100%, 40%);">+        stop_test:</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+ari-config:</span><br><span style="color: hsl(120, 100%, 40%);">+    apps: testsuite</span><br><span style="color: hsl(120, 100%, 40%);">+    events:</span><br><span style="color: hsl(120, 100%, 40%);">+        -</span><br><span style="color: hsl(120, 100%, 40%);">+            conditions:</span><br><span style="color: hsl(120, 100%, 40%);">+                match:</span><br><span style="color: hsl(120, 100%, 40%);">+                    type: 'ChannelStateChange'</span><br><span style="color: hsl(120, 100%, 40%);">+            count: '>1'</span><br><span style="color: hsl(120, 100%, 40%);">+        -</span><br><span style="color: hsl(120, 100%, 40%);">+            conditions:</span><br><span style="color: hsl(120, 100%, 40%);">+                match:</span><br><span style="color: hsl(120, 100%, 40%);">+                    type: StasisStart</span><br><span style="color: hsl(120, 100%, 40%);">+                    application: testsuite</span><br><span style="color: hsl(120, 100%, 40%);">+                    channel:</span><br><span style="color: hsl(120, 100%, 40%);">+                        id: 'testsuite-default-id$'</span><br><span style="color: hsl(120, 100%, 40%);">+            count: 1</span><br><span style="color: hsl(120, 100%, 40%);">+            requests:</span><br><span style="color: hsl(120, 100%, 40%);">+                method: 'post'</span><br><span style="color: hsl(120, 100%, 40%);">+                uri: 'channels/testsuite-default-id/play/MyPlaybackId'</span><br><span style="color: hsl(120, 100%, 40%);">+                params:</span><br><span style="color: hsl(120, 100%, 40%);">+                    media: 'sound:silence/5'</span><br><span style="color: hsl(120, 100%, 40%);">+        -</span><br><span style="color: hsl(120, 100%, 40%);">+            conditions:</span><br><span style="color: hsl(120, 100%, 40%);">+                match:</span><br><span style="color: hsl(120, 100%, 40%);">+                    type: PlaybackStarted</span><br><span style="color: hsl(120, 100%, 40%);">+                    application: testsuite</span><br><span style="color: hsl(120, 100%, 40%);">+                    playback:</span><br><span style="color: hsl(120, 100%, 40%);">+                        id: 'MyPlaybackId'</span><br><span style="color: hsl(120, 100%, 40%);">+                        target_uri: 'channel:testsuite-default-id$'</span><br><span style="color: hsl(120, 100%, 40%);">+            count: 2</span><br><span style="color: hsl(120, 100%, 40%);">+            requests:</span><br><span style="color: hsl(120, 100%, 40%);">+                -</span><br><span style="color: hsl(120, 100%, 40%);">+                    instance: 1</span><br><span style="color: hsl(120, 100%, 40%);">+                    delay: 1</span><br><span style="color: hsl(120, 100%, 40%);">+                    method: 'get'</span><br><span style="color: hsl(120, 100%, 40%);">+                    uri: 'channels/testsuite-default-id/rtp_statistics'</span><br><span style="color: hsl(120, 100%, 40%);">+                    response_body:</span><br><span style="color: hsl(120, 100%, 40%);">+                        match:</span><br><span style="color: hsl(120, 100%, 40%);">+                            {</span><br><span style="color: hsl(120, 100%, 40%);">+                                "channel_uniqueid": "testsuite-default-id"</span><br><span style="color: hsl(120, 100%, 40%);">+                            }</span><br><span style="color: hsl(120, 100%, 40%);">+        -</span><br><span style="color: hsl(120, 100%, 40%);">+            conditions:</span><br><span style="color: hsl(120, 100%, 40%);">+                match:</span><br><span style="color: hsl(120, 100%, 40%);">+                    type: PlaybackFinished</span><br><span style="color: hsl(120, 100%, 40%);">+                    application: testsuite</span><br><span style="color: hsl(120, 100%, 40%);">+                    playback:</span><br><span style="color: hsl(120, 100%, 40%);">+                        target_uri: 'channel:testsuite-default-id$'</span><br><span style="color: hsl(120, 100%, 40%);">+            count: 1</span><br><span style="color: hsl(120, 100%, 40%);">+            requests:</span><br><span style="color: hsl(120, 100%, 40%);">+                # playback is already deleted</span><br><span style="color: hsl(120, 100%, 40%);">+                method: 'delete'</span><br><span style="color: hsl(120, 100%, 40%);">+                uri: 'channels/testsuite-default-id'</span><br><span style="color: hsl(120, 100%, 40%);">+        -</span><br><span style="color: hsl(120, 100%, 40%);">+            conditions:</span><br><span style="color: hsl(120, 100%, 40%);">+                match:</span><br><span style="color: hsl(120, 100%, 40%);">+                    type: ChannelHangupRequest</span><br><span style="color: hsl(120, 100%, 40%);">+                    application: testsuite</span><br><span style="color: hsl(120, 100%, 40%);">+                    channel:</span><br><span style="color: hsl(120, 100%, 40%);">+                        id: 'testsuite-default-id$'</span><br><span style="color: hsl(120, 100%, 40%);">+            count: 1</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+        -</span><br><span style="color: hsl(120, 100%, 40%);">+            conditions:</span><br><span style="color: hsl(120, 100%, 40%);">+                match:</span><br><span style="color: hsl(120, 100%, 40%);">+                    type: StasisEnd</span><br><span style="color: hsl(120, 100%, 40%);">+                    application: testsuite</span><br><span style="color: hsl(120, 100%, 40%);">+                    channel:</span><br><span style="color: hsl(120, 100%, 40%);">+                        id: 'testsuite-default-id$'</span><br><span style="color: hsl(120, 100%, 40%);">+            count: 1</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span>diff --git a/tests/rest_api/channels/tests.yaml b/tests/rest_api/channels/tests.yaml</span><br><span>index 81bba31..b25d1dd 100644</span><br><span>--- a/tests/rest_api/channels/tests.yaml</span><br><span>+++ b/tests/rest_api/channels/tests.yaml</span><br><span>@@ -13,3 +13,4 @@</span><br><span>     - test: 'originate_to_dialplan'</span><br><span>     - dir: 'hold'</span><br><span>     - test: 'originate_duplicate_id'</span><br><span style="color: hsl(120, 100%, 40%);">+    - test: 'rtp_statistics'</span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.asterisk.org/c/testsuite/+/11329">change 11329</a>. To unsubscribe, or for help writing mail filters, visit <a href="https://gerrit.asterisk.org/settings">settings</a>.</p><div itemscope itemtype="http://schema.org/EmailMessage"><div itemscope itemprop="action" itemtype="http://schema.org/ViewAction"><link itemprop="url" href="https://gerrit.asterisk.org/c/testsuite/+/11329"/><meta itemprop="name" content="View Change"/></div></div>

<div style="display:none"> Gerrit-Project: testsuite </div>
<div style="display:none"> Gerrit-Branch: 13 </div>
<div style="display:none"> Gerrit-Change-Id: Ie41127219a4fccc183f9374fbcb768835a7d2bb2 </div>
<div style="display:none"> Gerrit-Change-Number: 11329 </div>
<div style="display:none"> Gerrit-PatchSet: 1 </div>
<div style="display:none"> Gerrit-Owner: sungtae kim <pchero21@gmail.com> </div>
<div style="display:none"> Gerrit-MessageType: newchange </div>