diff options
author | Patrick Radizi <patrick.radizi at axis.com> | 2013-09-24 17:30:18 +0200 |
---|---|---|
committer | Wim Taymans <wim.taymans@collabora.co.uk> | 2013-09-24 17:30:18 +0200 |
commit | 7b0ad7c25f7f5eaa5ef8902a4ab299d57318edfd (patch) | |
tree | 8900936f38bed60df5231b2146bca49e4760132a /tests | |
parent | c7bed54b879ed9bccc92a33b81e8dbd217e243e7 (diff) | |
download | gstreamer-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.c | 45 |
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")); |