From a1777ef199af6f8aab693381238df695ca1a017c Mon Sep 17 00:00:00 2001 From: Donat Zenichev Date: Tue, 21 Jan 2025 14:37:29 +0100 Subject: [PATCH] MT#61856 introduce auto-daemon-tests-sdp-manipulations Move SDP attr and SDP media level manipulations into a dedicated tests file. Change-Id: I5988f8f8250fe55682b822713a95a23bec45e6cb --- t/Makefile | 6 +- t/auto-daemon-tests-sdp-manipulations.pl | 1319 ++++++++++++++++++++++ t/auto-daemon-tests.pl | 1303 --------------------- 3 files changed, 1324 insertions(+), 1304 deletions(-) create mode 100644 t/auto-daemon-tests-sdp-manipulations.pl diff --git a/t/Makefile b/t/Makefile index 214fda5e4..22d1c9dfa 100644 --- a/t/Makefile +++ b/t/Makefile @@ -142,7 +142,8 @@ daemon-tests: daemon-tests-main daemon-tests-jb daemon-tests-pubsub daemon-tests daemon-tests-intfs daemon-tests-stats daemon-tests-player-cache daemon-tests-redis \ daemon-tests-rtpp-flags daemon-tests-redis-json daemon-tests-measure-rtp daemon-tests-mos-legacy \ daemon-tests-mos-fullband daemon-tests-config-file \ - daemon-tests-templ-def daemon-tests-templ-def-offer + daemon-tests-templ-def daemon-tests-templ-def-offer \ + daemon-tests-sdp-manipulations daemon-test-deps: tests-preload.so $(MAKE) -C ../daemon @@ -198,6 +199,9 @@ daemon-tests-audio-player-play-media: daemon-test-deps daemon-tests-rtpp-flags: daemon-test-deps ./auto-test-helper "$@" perl -I../perl auto-daemon-tests-rtpp-flags.pl +daemon-tests-sdp-manipulations: daemon-test-deps + ./auto-test-helper "$@" perl -I../perl auto-daemon-tests-sdp-manipulations.pl + daemon-tests-async-tc: daemon-test-deps ./auto-test-helper "$@" perl -I../perl auto-daemon-tests-async-tc.pl diff --git a/t/auto-daemon-tests-sdp-manipulations.pl b/t/auto-daemon-tests-sdp-manipulations.pl new file mode 100644 index 000000000..031004bea --- /dev/null +++ b/t/auto-daemon-tests-sdp-manipulations.pl @@ -0,0 +1,1319 @@ +#!/usr/bin/perl + +use strict; +use warnings; +use NGCP::Rtpengine::Test; +use NGCP::Rtpclient::SRTP; +use NGCP::Rtpengine::AutoTest; +use Test::More; +use NGCP::Rtpclient::ICE; +use POSIX; + +autotest_start(qw(--config-file=none -t -1 -i 203.0.113.1 -i 2001:db8:4321::1 + -i foo/203.0.113.7 -i bar/203.0.113.8 + -n 2223 -c 12345 -f -L 7 -E -u 2222 --silence-detect=1 --log-level-internals=7)) + or die; + + +# Arbitrary SDP media level manipulations + +new_call; + +offer('SDP media manipulations - remove video', { ICE => 'remove', DTLS => 'off', SDES => [ 'nonew' ], 'sdp-media-remove' => ['video']}, < 'remove' }, < ['other']}, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], 'sdp-media-remove' => ['audio']}, < 'remove' }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], 'sdp-attr' => { audio => { remove => ['test'] } }}, < 'remove' }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], 'sdp-attr' => { none => { remove => ['test'] } }}, < 'remove' }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], 'sdp-attr' => { audio => { remove => ['test2'] }, none => { remove => ['test1'] } }}, < 'remove' }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], 'sdp-attr' => { audio => { add => ['test1'] }, none => { add => ['test2'] } }}, < 'remove' }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], 'sdp-attr' => { audio => { add => ['test1', 'test2'] } }}, < 'remove' }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], 'sdp-attr' => { audio => { add => ['test1'], remove => ['test2'] } }}, < 'remove' }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], 'sdp-attr' => { none => { remove => ['test1', 'test2'] } }}, < 'remove' }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], 'sdp-attr' => { audio => { substitute => [['test1', 'test2']] } }}, < 'remove' }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], 'sdp-attr' => { none => { substitute => [['test1', 'test2']] } }}, < 'remove' }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], 'sdp-attr' => { audio => { substitute => [['test1', 'test2'] , ['test5', 'test6']] } }}, < 'remove' }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], flags => ['sdp-attr-remove-audio-test'] }, < 'remove' }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], flags => ['sdp-attr-remove-none-test'] }, < 'remove' }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], flags => ['sdp-attr-remove-audio-test2', 'sdp-attr-remove-none-test1'] }, < 'remove' }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], flags => ['sdp-attr-add-audio-test1', 'sdp-attr-add-none-test2'], }, < 'remove' }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], flags => ['sdp-attr-add-audio-test1', 'sdp-attr-add-audio-test2'] }, < 'remove' }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], flags => ['sdp-attr-add-audio-test1', 'sdp-attr-remove-audio-test2'] }, < 'remove' }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], flags => ['sdp-attr-remove-none-test1', 'sdp-attr-remove-none-test2'] }, < 'remove' }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], flags => ['sdp-attr-substitute-audio-test1>test2'] }, < 'remove' }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], flags => ['sdp-attr-substitute-none-test1>test2'] }, < 'remove' }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], flags => ['sdp-attr-substitute-audio-test1>test2', 'sdp-attr-substitute-audio-test5>test6'] }, < 'remove' }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], flags => ['sdp-attr-substitute-audio-fmtp:101..0-16>fmtp:101..0-15,32,36'] }, < 'remove' }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], flags => ['sdp-attr-substitute-audio-fmtp:101>fmtp:101..0-15,32,36'] }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], flags => ['sdp-attr-remove-audio-fmtp:101..0-16'] }, < 'remove' }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], flags => ['sdp-attr-remove-audio-fmtp:101'] }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], flags => ['sdp-attr-remove-audio-fmtp', 'sdp-attr-remove-audio-rtpmap'] }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], flags => ['sdp-attr-remove-audio-sendrecv', 'sdp-attr-remove-audio-rtcp', 'sdp-attr-remove-audio-ptime'] }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], flags => ['sdp-attr-remove-global-something', 'sdp-attr-remove-global-rather', 'sdp-attr-remove-global-or'] }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], 'sdp-media-remove' => ['video']}, < 'remove' }, < ['other']}, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], 'sdp-media-remove' => ['audio']}, < 'remove' }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], 'sdp-attr' => { audio => { remove => ['test'] } }}, < 'remove' }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], 'sdp-attr' => { none => { remove => ['test'] } }}, < 'remove' }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], 'sdp-attr' => { audio => { remove => ['test2'] }, none => { remove => ['test1'] } }}, < 'remove' }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], 'sdp-attr' => { audio => { add => ['test1'] }, none => { add => ['test2'] } }}, < 'remove' }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], 'sdp-attr' => { audio => { add => ['test1', 'test2'] } }}, < 'remove' }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], 'sdp-attr' => { audio => { add => ['test1'], remove => ['test2'] } }}, < 'remove' }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], 'sdp-attr' => { none => { remove => ['test1', 'test2'] } }}, < 'remove' }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], 'sdp-attr' => { audio => { substitute => [['test1', 'test2']] } }}, < 'remove' }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], 'sdp-attr' => { none => { substitute => [['test1', 'test2']] } }}, < 'remove' }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], 'sdp-attr' => { audio => { substitute => [['test1', 'test2'] , ['test5', 'test6']] } }}, < 'remove' }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], flags => ['sdp-attr-remove-audio-test'] }, < 'remove' }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], flags => ['sdp-attr-remove-none-test'] }, < 'remove' }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], flags => ['sdp-attr-remove-audio-test2', 'sdp-attr-remove-none-test1'] }, < 'remove' }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], flags => ['sdp-attr-add-audio-test1', 'sdp-attr-add-none-test2'], }, < 'remove' }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], flags => ['sdp-attr-add-audio-test1', 'sdp-attr-add-audio-test2'] }, < 'remove' }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], flags => ['sdp-attr-add-audio-test1', 'sdp-attr-remove-audio-test2'] }, < 'remove' }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], flags => ['sdp-attr-remove-none-test1', 'sdp-attr-remove-none-test2'] }, < 'remove' }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], flags => ['sdp-attr-substitute-audio-test1>test2'] }, < 'remove' }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], flags => ['sdp-attr-substitute-none-test1>test2'] }, < 'remove' }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], flags => ['sdp-attr-substitute-audio-test1>test2', 'sdp-attr-substitute-audio-test5>test6'] }, < 'remove' }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], flags => ['sdp-attr-substitute-audio-fmtp:101..0-16>fmtp:101..0-15,32,36'] }, < 'remove' }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], flags => ['sdp-attr-substitute-audio-fmtp:101>fmtp:101..0-15,32,36'] }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], flags => ['sdp-attr-remove-audio-fmtp:101..0-16'] }, < 'remove' }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], flags => ['sdp-attr-remove-audio-fmtp:101'] }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], flags => ['sdp-attr-remove-audio-fmtp', 'sdp-attr-remove-audio-rtpmap'] }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], flags => ['sdp-attr-remove-audio-sendrecv', 'sdp-attr-remove-audio-rtcp', 'sdp-attr-remove-audio-ptime'] }, < 'remove', DTLS => 'off', SDES => [ 'nonew' ], flags => ['sdp-attr-remove-global-something', 'sdp-attr-remove-global-rather', 'sdp-attr-remove-global-or'] }, <