Make bt_private_component_*_add_*_port() return a status code
[babeltrace.git] / tests / lib / test_graph_topo.c
index 274f787264148a5fdd45b18035bfaa5d0a654d50..058393a2b091503afc8fac29826b26dc46d8a105 100644 (file)
@@ -245,7 +245,7 @@ bool compare_events(struct event *ev_a, struct event *ev_b)
                        }
                        break;
                default:
-                       assert(false);
+                       abort();
        }
 
        return true;
@@ -320,7 +320,7 @@ void src_port_connected(struct bt_private_component *private_component,
                struct bt_private_port *self_private_port,
                struct bt_port *other_port)
 {
-       struct bt_private_port *port;
+       int ret;
 
        struct event event = {
                .type = COMP_PORT_CONNECTED,
@@ -337,10 +337,9 @@ void src_port_connected(struct bt_private_component *private_component,
 
        switch (current_test) {
        case TEST_SRC_ADDS_PORT_IN_PORT_CONNECTED:
-               port = bt_private_component_source_add_output_private_port(
-                       private_component, "hello");
-               assert(port);
-               bt_put(port);
+               ret = bt_private_component_source_add_output_private_port(
+                       private_component, "hello", NULL, NULL);
+               assert(ret == 0);
                break;
        default:
                break;
@@ -373,6 +372,18 @@ void src_port_disconnected(struct bt_private_component *private_component,
        }
 }
 
+static
+enum bt_component_status src_init(struct bt_private_component *priv_comp,
+       struct bt_value *params, void *init_method_data)
+{
+       int ret;
+
+       ret = bt_private_component_source_add_output_private_port(
+               priv_comp, "out", NULL, NULL);
+       assert(ret == 0);
+       return BT_COMPONENT_STATUS_OK;
+}
+
 static
 enum bt_component_status sink_consume(
                struct bt_private_component *priv_component)
@@ -383,8 +394,8 @@ enum bt_component_status sink_consume(
        switch (current_test) {
        case TEST_SINK_REMOVES_PORT_IN_CONSUME:
        case TEST_SINK_REMOVES_PORT_IN_CONSUME_THEN_SRC_REMOVES_DISCONNECTED_PORT:
-               def_port = bt_private_component_sink_get_default_input_private_port(
-                       priv_component);
+               def_port = bt_private_component_sink_get_input_private_port_by_name(
+                       priv_component, "in");
                assert(def_port);
                ret = bt_private_port_remove_from_component(def_port);
                assert(ret == 0);
@@ -433,6 +444,18 @@ void sink_port_disconnected(struct bt_private_component *private_component,
        append_event(&event);
 }
 
+static
+enum bt_component_status sink_init(struct bt_private_component *priv_comp,
+       struct bt_value *params, void *init_method_data)
+{
+       int ret;
+
+       ret = bt_private_component_sink_add_input_private_port(priv_comp,
+               "in", NULL, NULL);
+       assert(ret == 0);
+       return BT_COMPONENT_STATUS_OK;
+}
+
 static
 void graph_port_added(struct bt_port *port,
                void *data)
@@ -526,6 +549,8 @@ void init_test(void)
 
        src_comp_class = bt_component_class_source_create("src", src_iter_next);
        assert(src_comp_class);
+       ret = bt_component_class_set_init_method(src_comp_class, src_init);
+       assert(ret == 0);
        ret = bt_component_class_set_accept_port_connection_method(
                src_comp_class, accept_port_connection);
        assert(ret == 0);
@@ -537,6 +562,8 @@ void init_test(void)
        assert(ret == 0);
        sink_comp_class = bt_component_class_sink_create("sink", sink_consume);
        assert(sink_comp_class);
+       ret = bt_component_class_set_init_method(sink_comp_class, sink_init);
+       assert(ret == 0);
        ret = bt_component_class_set_accept_port_connection_method(
                sink_comp_class, accept_port_connection);
        assert(ret == 0);
@@ -588,16 +615,16 @@ struct bt_graph *create_graph(void)
 
        assert(graph);
        ret = bt_graph_add_port_added_listener(graph, graph_port_added, NULL);
-       assert(ret == 0);
+       assert(ret >= 0);
        ret = bt_graph_add_port_removed_listener(graph, graph_port_removed,
                NULL);
-       assert(ret == 0);
+       assert(ret >= 0);
        ret = bt_graph_add_ports_connected_listener(graph, graph_ports_connected,
                NULL);
-       assert(ret == 0);
+       assert(ret >= 0);
        ret = bt_graph_add_ports_disconnected_listener(graph,
                graph_ports_disconnected, NULL);
-       assert(ret == 0);
+       assert(ret >= 0);
        return graph;
 }
 
@@ -620,6 +647,7 @@ void test_sink_removes_port_in_port_connected_then_src_removes_disconnected_port
        struct bt_port *sink_def_port;
        struct bt_connection *conn;
        struct event event;
+       enum bt_graph_status status;
        size_t src_accept_port_connection_pos;
        size_t sink_accept_port_connection_pos;
        size_t src_port_connected_pos;
@@ -636,11 +664,13 @@ void test_sink_removes_port_in_port_connected_then_src_removes_disconnected_port
        src = create_src();
        sink = create_sink();
        graph = create_graph();
-       src_def_port = bt_component_source_get_default_output_port(src);
+       src_def_port = bt_component_source_get_output_port_by_name(src, "out");
        assert(src_def_port);
-       sink_def_port = bt_component_sink_get_default_input_port(sink);
+       sink_def_port = bt_component_sink_get_input_port_by_name(sink, "in");
        assert(sink_def_port);
-       conn = bt_graph_connect_ports(graph, src_def_port, sink_def_port);
+       status = bt_graph_connect_ports(graph, src_def_port, sink_def_port,
+               &conn);
+       assert(status == 0);
        assert(conn);
 
        /* We're supposed to have 5 events so far */
@@ -782,6 +812,7 @@ void test_sink_removes_port_in_port_connected(void)
        struct bt_port *sink_def_port;
        struct bt_connection *conn;
        struct event event;
+       enum bt_graph_status status;
        size_t src_accept_port_connection_pos;
        size_t sink_accept_port_connection_pos;
        size_t src_port_connected_pos;
@@ -797,12 +828,13 @@ void test_sink_removes_port_in_port_connected(void)
        src = create_src();
        sink = create_sink();
        graph = create_graph();
-       src_def_port = bt_component_source_get_default_output_port(src);
+       src_def_port = bt_component_source_get_output_port_by_name(src, "out");
        assert(src_def_port);
-       sink_def_port = bt_component_sink_get_default_input_port(sink);
+       sink_def_port = bt_component_sink_get_input_port_by_name(sink, "in");
        assert(sink_def_port);
-       conn = bt_graph_connect_ports(graph, src_def_port, sink_def_port);
-       assert(conn);
+       status = bt_graph_connect_ports(graph, src_def_port, sink_def_port,
+               &conn);
+       assert(status == 0);
 
        /* We're supposed to have 5 events so far */
        ok(events->len == 5, "we have the expected number of events (before consume)");
@@ -928,6 +960,7 @@ void test_src_adds_port_in_port_connected(void)
        struct bt_port *src_hello_port;
        struct bt_connection *conn;
        struct event event;
+       enum bt_graph_status status;
        size_t src_accept_port_connection_pos;
        size_t sink_accept_port_connection_pos;
        size_t src_port_connected_pos;
@@ -940,12 +973,13 @@ void test_src_adds_port_in_port_connected(void)
        src = create_src();
        sink = create_sink();
        graph = create_graph();
-       src_def_port = bt_component_source_get_default_output_port(src);
+       src_def_port = bt_component_source_get_output_port_by_name(src, "out");
        assert(src_def_port);
-       sink_def_port = bt_component_sink_get_default_input_port(sink);
+       sink_def_port = bt_component_sink_get_input_port_by_name(sink, "in");
        assert(sink_def_port);
-       conn = bt_graph_connect_ports(graph, src_def_port, sink_def_port);
-       assert(conn);
+       status = bt_graph_connect_ports(graph, src_def_port, sink_def_port,
+               &conn);
+       assert(status == 0);
        src_hello_port = bt_component_source_get_output_port_by_name(src,
                "hello");
        assert(src_hello_port);
@@ -1035,6 +1069,7 @@ void test_simple(void)
        struct bt_port *sink_def_port;
        struct bt_connection *conn;
        struct event event;
+       enum bt_graph_status status;
        size_t src_accept_port_connection_pos;
        size_t sink_accept_port_connection_pos;
        size_t src_port_connected_pos;
@@ -1045,12 +1080,13 @@ void test_simple(void)
        src = create_src();
        sink = create_sink();
        graph = create_graph();
-       src_def_port = bt_component_source_get_default_output_port(src);
+       src_def_port = bt_component_source_get_output_port_by_name(src, "out");
        assert(src_def_port);
-       sink_def_port = bt_component_sink_get_default_input_port(sink);
+       sink_def_port = bt_component_sink_get_input_port_by_name(sink, "in");
        assert(sink_def_port);
-       conn = bt_graph_connect_ports(graph, src_def_port, sink_def_port);
-       assert(conn);
+       status = bt_graph_connect_ports(graph, src_def_port, sink_def_port,
+               &conn);
+       assert(status == 0);
 
        /* We're supposed to have 5 events */
        ok(events->len == 5, "we have the expected number of events");
This page took 0.026755 seconds and 4 git commands to generate.