You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "Jiri Daněk (Jira)" <ji...@apache.org> on 2020/04/25 16:31:00 UTC

[jira] [Assigned] (PROTON-1675) [cpp] Attempt to listen on invalid URL will not throw exception

     [ https://issues.apache.org/jira/browse/PROTON-1675?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jiri Daněk reassigned PROTON-1675:
----------------------------------

    Assignee: Jiri Daněk  (was: Clifford Jansen)

> [cpp] Attempt to listen on invalid URL will not throw exception
> ---------------------------------------------------------------
>
>                 Key: PROTON-1675
>                 URL: https://issues.apache.org/jira/browse/PROTON-1675
>             Project: Qpid Proton
>          Issue Type: Test
>          Components: cpp-binding
>    Affects Versions: proton-c-0.18.0
>            Reporter: Jiri Daněk
>            Assignee: Jiri Daněk
>            Priority: Major
>             Fix For: proton-c-0.31.0
>
>
> The test {{container_test.cpp/test_container_bad_address()}} is not checking that expected exceptions are actually thrown. If I add these checks, the test starts failing.
> {noformat}
> diff --git a/proton-c/bindings/cpp/src/container_test.cpp b/proton-c/bindings/cpp/src/container_test.cpp
> index eb05ddbd..d1dc6628 100644
> --- a/proton-c/bindings/cpp/src/container_test.cpp
> +++ b/proton-c/bindings/cpp/src/container_test.cpp
> @@ -176,12 +176,18 @@ int test_container_bad_address() {
>  
>      proton::container c;
>      // Default fixed-option listener. Valgrind for leaks.
> -    try { c.listen("999.666.999.666:0"); } catch (const proton::error&) {}
> +    try {
> +        c.listen("999.666.999.666:0");
> +        FAIL("exception expected");
> +    } catch (const proton::error&) {}
>      c.run();
>      // Dummy listener.
>      test_listen_handler l;
>      test_handler h2("999.999.999.666", proton::connection_options());
> -    try { c.listen("999.666.999.666:0", l); } catch (const proton::error&) {}
> +    try {
> +        c.listen("999.666.999.666:0", l);
> +        FAIL("exception expected");
> +    } catch (const proton::error&) {}
>      c.run();
>      ASSERT(!l.on_open_);
>      ASSERT(!l.on_accept_);
> {noformat}
> No exception is ever thrown: invalid IP, port is already occupied, port is < 1025 and I am not root... never.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org