summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorPatrick Radizi <patrick.radizi at axis.com>2013-09-24 17:30:18 +0200
committerWim Taymans <wim.taymans@collabora.co.uk>2013-09-24 17:30:18 +0200
commit7b0ad7c25f7f5eaa5ef8902a4ab299d57318edfd (patch)
tree8900936f38bed60df5231b2146bca49e4760132a /tests
parentc7bed54b879ed9bccc92a33b81e8dbd217e243e7 (diff)
downloadgstreamer-7b0ad7c25f7f5eaa5ef8902a4ab299d57318edfd.tar.gz
addresspool: return reason of failure
Let gst_rtsp_address_pool_reserve_address() return the reason why the address could not be reserved. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=708229
Diffstat (limited to 'tests')
-rw-r--r--tests/check/gst/addresspool.c45
1 files changed, 30 insertions, 15 deletions
diff --git a/tests/check/gst/addresspool.c b/tests/check/gst/addresspool.c
index d862929f99..f1b62e9d62 100644
--- a/tests/check/gst/addresspool.c
+++ b/tests/check/gst/addresspool.c
@@ -25,6 +25,7 @@ GST_START_TEST (test_pool)
{
GstRTSPAddressPool *pool;
GstRTSPAddress *addr, *addr2, *addr3;
+ GstRTSPAddressPoolResult res;
pool = gst_rtsp_address_pool_new ();
@@ -126,47 +127,61 @@ GST_START_TEST (test_pool)
fail_unless (gst_rtsp_address_pool_add_range (pool,
"233.252.1.1", "233.252.1.1", 5000, 5001, 1));
- addr = gst_rtsp_address_pool_reserve_address (pool, "233.252.1.1", 5000, 3,
- 1);
+ res = gst_rtsp_address_pool_reserve_address (pool, "233.252.1.1", 5000, 3,
+ 1, &addr);
+ fail_unless (res == GST_RTSP_ADDRESS_POOL_ERANGE);
fail_unless (addr == NULL);
- addr = gst_rtsp_address_pool_reserve_address (pool, "233.252.1.2", 5000, 2,
- 1);
+ res = gst_rtsp_address_pool_reserve_address (pool, "233.252.1.2", 5000, 2,
+ 1, &addr);
+ fail_unless (res == GST_RTSP_ADDRESS_POOL_ERANGE);
fail_unless (addr == NULL);
- addr = gst_rtsp_address_pool_reserve_address (pool, "233.252.1.1", 500, 2, 1);
+ res = gst_rtsp_address_pool_reserve_address (pool, "233.252.1.1", 500, 2, 1,
+ &addr);
+ fail_unless (res == GST_RTSP_ADDRESS_POOL_ERANGE);
fail_unless (addr == NULL);
- addr = gst_rtsp_address_pool_reserve_address (pool, "233.252.1.1", 5000, 2,
- 2);
+ res = gst_rtsp_address_pool_reserve_address (pool, "233.252.1.1", 5000, 2,
+ 2, &addr);
+ fail_unless (res == GST_RTSP_ADDRESS_POOL_ERANGE);
fail_unless (addr == NULL);
- addr = gst_rtsp_address_pool_reserve_address (pool, "2000::1", 5000, 2, 2);
+ res = gst_rtsp_address_pool_reserve_address (pool, "2000::1", 5000, 2, 2,
+ &addr);
+ fail_unless (res == GST_RTSP_ADDRESS_POOL_EINVAL);
fail_unless (addr == NULL);
- addr = gst_rtsp_address_pool_reserve_address (pool, "1.1", 5000, 2, 2);
+ res = gst_rtsp_address_pool_reserve_address (pool, "1.1", 5000, 2, 2, &addr);
+ fail_unless (res == GST_RTSP_ADDRESS_POOL_EINVAL);
fail_unless (addr == NULL);
- addr = gst_rtsp_address_pool_reserve_address (pool, "233.252.1.1", 5000, 2,
- 1);
+ res = gst_rtsp_address_pool_reserve_address (pool, "233.252.1.1", 5000, 2,
+ 1, &addr);
+ fail_unless (res == GST_RTSP_ADDRESS_POOL_OK);
fail_unless (addr != NULL);
fail_unless (addr->port == 5000);
fail_unless (!strcmp (addr->address, "233.252.1.1"));
+ res = gst_rtsp_address_pool_reserve_address (pool, "233.252.1.1", 5000, 2,
+ 1, &addr2);
+ fail_unless (res == GST_RTSP_ADDRESS_POOL_ERESERVED);
+ fail_unless (addr2 == NULL);
+
gst_rtsp_address_free (addr);
gst_rtsp_address_pool_clear (pool);
fail_unless (gst_rtsp_address_pool_add_range (pool,
"233.252.1.1", "233.252.1.3", 5000, 5001, 1));
- addr = gst_rtsp_address_pool_reserve_address (pool, "233.252.1.1", 5000, 2,
- 1);
+ res = gst_rtsp_address_pool_reserve_address (pool, "233.252.1.1", 5000, 2,
+ 1, &addr);
fail_unless (addr != NULL);
fail_unless (addr->port == 5000);
fail_unless (!strcmp (addr->address, "233.252.1.1"));
- addr2 = gst_rtsp_address_pool_reserve_address (pool, "233.252.1.3", 5000, 2,
- 1);
+ res = gst_rtsp_address_pool_reserve_address (pool, "233.252.1.3", 5000, 2,
+ 1, &addr2);
fail_unless (addr2 != NULL);
fail_unless (addr2->port == 5000);
fail_unless (!strcmp (addr2->address, "233.252.1.3"));