#include <stdio.h>
#include <stdlib.h>
#include <stdint.h>
+#include <stdbool.h>
#include <inttypes.h>
#include <string.h>
#include <assert.h>
#include <babeltrace/graph/notification-packet.h>
#include <babeltrace/graph/port.h>
#include <babeltrace/graph/private-component-source.h>
+#include <babeltrace/graph/private-component-sink.h>
#include <babeltrace/graph/private-component.h>
#include <babeltrace/graph/private-connection.h>
#include <babeltrace/graph/private-notification-iterator.h>
};
static int64_t seq1_with_again[] = {
- 24, 53, 97, 105, 119, 210, SEQ_AGAIN, SEQ_AGAIN, 222, 240, 292,
- 317, 353, 407, 433, 473, 487, 504, 572, 615, 708, 766, 850, 852,
- 931, 951, 956, 996, SEQ_END,
+ 24, 53, 97, 105, 119, 210, SEQ_AGAIN, 222, 240, 292, 317, 353,
+ 407, 433, 473, 487, 504, 572, 615, 708, 766, 850, 852, 931, 951,
+ 956, 996, SEQ_END,
};
static int64_t seq2_with_again[] = {
51, 59, 68, 77, 91, 121, 139, 170, 179, 266, 352, 454, 478, 631,
- 644, 668, 714, 744, 750, 778, 790, 836, SEQ_AGAIN, SEQ_AGAIN,
- SEQ_END,
+ 644, 668, 714, 744, 750, 778, 790, 836, SEQ_AGAIN, SEQ_END,
};
static int64_t seq3_with_again[] = {
8, 71, 209, 254, 298, 320, 350, 393, 419, 624, 651, SEQ_AGAIN,
- SEQ_AGAIN, 678, 717, 731, 733, 788, 819, 820, 857, 892, 903,
- 944, 998, SEQ_END,
+ 678, 717, 731, 733, 788, 819, 820, 857, 892, 903, 944, 998,
+ SEQ_END,
};
static int64_t seq4_with_again[] = {
}
if (i != test_events->len) {
+ if (debug) {
+ fprintf(stderr, ":: Length mismatch\n");
+ }
+
return false;
}
user_data->packet = src_packet3;
break;
default:
- assert(false);
+ abort();
}
switch (current_test) {
}
break;
default:
- assert(false);
+ abort();
}
return BT_NOTIFICATION_ITERATOR_STATUS_OK;
(uint64_t) ts_ns);
assert(clock_value);
ret = bt_ctf_event_set_clock_value(event, clock_value);
+ assert(ret == 0);
bt_put(clock_value);
}
struct bt_private_notification_iterator *priv_iterator)
{
struct bt_notification_iterator_next_return next_return = {
- .status = BT_NOTIFICATION_ITERATOR_STATUS_OK,
.notification = NULL,
+ .status = BT_NOTIFICATION_ITERATOR_STATUS_OK,
};
struct src_iter_user_data *user_data =
bt_private_notification_iterator_get_user_data(priv_iterator);
struct bt_private_component *private_component =
bt_private_notification_iterator_get_private_component(priv_iterator);
+ int ret;
assert(user_data);
assert(private_component);
break;
case TEST_SINGLE_END_THEN_MULTIPLE_FULL:
if (user_data->iter_index == 0) {
- struct bt_private_port *priv_port;
-
- priv_port = bt_private_component_source_add_output_private_port(
- private_component, "out1");
- assert(priv_port);
- bt_put(priv_port);
- priv_port = bt_private_component_source_add_output_private_port(
- private_component, "out2");
- assert(priv_port);
- bt_put(priv_port);
+ ret = bt_private_component_source_add_output_private_port(
+ private_component, "out1", NULL, NULL);
+ assert(ret == 0);
+ ret = bt_private_component_source_add_output_private_port(
+ private_component, "out2", NULL, NULL);
+ assert(ret == 0);
next_return.status = BT_NOTIFICATION_ITERATOR_STATUS_END;
} else {
next_return = src_iter_next_seq(user_data);
next_return.status = BT_NOTIFICATION_ITERATOR_STATUS_AGAIN;
user_data->at++;
} else {
- struct bt_private_port *priv_port;
-
- priv_port = bt_private_component_source_add_output_private_port(
- private_component, "out1");
- assert(priv_port);
- bt_put(priv_port);
- priv_port = bt_private_component_source_add_output_private_port(
- private_component, "out2");
- assert(priv_port);
- bt_put(priv_port);
+ ret = bt_private_component_source_add_output_private_port(
+ private_component, "out1", NULL, NULL);
+ assert(ret == 0);
+ ret = bt_private_component_source_add_output_private_port(
+ private_component, "out2", NULL, NULL);
+ assert(ret == 0);
next_return.status = BT_NOTIFICATION_ITERATOR_STATUS_END;
}
} else {
}
break;
default:
- assert(false);
+ abort();
}
bt_put(private_component);
struct bt_private_component *private_component,
struct bt_value *params, void *init_method_data)
{
- struct bt_private_port *priv_port;
int ret;
size_t nb_ports;
- priv_port = bt_private_component_source_get_default_output_private_port(
- private_component);
- if (priv_port) {
- ret = bt_private_port_remove_from_component(priv_port);
- assert(ret == 0);
- bt_put(priv_port);
- }
-
switch (current_test) {
case TEST_NO_TS:
nb_ports = 2;
}
if (nb_ports >= 1) {
- priv_port = bt_private_component_source_add_output_private_port(
- private_component, "out0");
- assert(priv_port);
- bt_put(priv_port);
+ ret = bt_private_component_source_add_output_private_port(
+ private_component, "out0", NULL, NULL);
+ assert(ret == 0);
}
if (nb_ports >= 2) {
- priv_port = bt_private_component_source_add_output_private_port(
- private_component, "out1");
- assert(priv_port);
- bt_put(priv_port);
+ ret = bt_private_component_source_add_output_private_port(
+ private_component, "out1", NULL, NULL);
+ assert(ret == 0);
}
if (nb_ports >= 3) {
- priv_port = bt_private_component_source_add_output_private_port(
- private_component, "out2");
- assert(priv_port);
- bt_put(priv_port);
+ ret = bt_private_component_source_add_output_private_port(
+ private_component, "out2", NULL, NULL);
+ assert(ret == 0);
}
if (nb_ports >= 4) {
- priv_port = bt_private_component_source_add_output_private_port(
- private_component, "out3");
- assert(priv_port);
- bt_put(priv_port);
+ ret = bt_private_component_source_add_output_private_port(
+ private_component, "out3", NULL, NULL);
+ assert(ret == 0);
}
return BT_COMPONENT_STATUS_OK;
assert(user_data);
assert(priv_conn);
user_data->notif_iter =
- bt_private_connection_create_notification_iterator(priv_conn);
+ bt_private_connection_create_notification_iterator(priv_conn,
+ NULL);
assert(user_data->notif_iter);
bt_put(priv_conn);
}
ret = bt_private_component_set_user_data(private_component,
user_data);
assert(ret == 0);
+ ret = bt_private_component_sink_add_input_private_port(
+ private_component, "in", NULL, NULL);
+ assert(ret == 0);
return BT_COMPONENT_STATUS_OK;
}
struct bt_graph *graph;
int64_t i;
int64_t count;
- void *conn;
enum bt_graph_status graph_status = BT_GRAPH_STATUS_OK;
clear_test_events();
assert(count >= 0);
for (i = 0; i < count; i++) {
- upstream_port = bt_component_source_get_output_port_at_index(
+ upstream_port = bt_component_source_get_output_port_by_index(
src_comp, i);
assert(upstream_port);
- downstream_port = bt_component_filter_get_input_port_at_index(
+ downstream_port = bt_component_filter_get_input_port_by_index(
muxer_comp, i);
assert(downstream_port);
- conn = bt_graph_connect_ports(graph,
- upstream_port, downstream_port);
- assert(conn);
- bt_put(conn);
+ graph_status = bt_graph_connect_ports(graph,
+ upstream_port, downstream_port, NULL);
+ assert(graph_status == 0);
bt_put(upstream_port);
bt_put(downstream_port);
}
}
/* Connect muxer output port to sink input port */
- upstream_port = bt_component_filter_get_output_port(muxer_comp,
+ upstream_port = bt_component_filter_get_output_port_by_name(muxer_comp,
"out");
assert(upstream_port);
- downstream_port = bt_component_sink_get_default_input_port(sink_comp);
+ downstream_port = bt_component_sink_get_input_port_by_name(sink_comp, "in");
assert(downstream_port);
- conn = bt_graph_connect_ports(graph, upstream_port, downstream_port);
- assert(conn);
- bt_put(conn);
+ graph_status = bt_graph_connect_ports(graph, upstream_port,
+ downstream_port, NULL);
+ assert(graph_status == 0);
bt_put(upstream_port);
bt_put(downstream_port);
struct bt_component *muxer_comp)
{
struct bt_port *avail_muxer_port = NULL;
- void *conn;
int64_t i;
int64_t count;
+ enum bt_graph_status graph_status;
count = bt_component_filter_get_input_port_count(muxer_comp);
assert(count >= 0);
for (i = 0; i < count; i++) {
struct bt_port *muxer_port =
- bt_component_filter_get_input_port_at_index(
+ bt_component_filter_get_input_port_by_index(
muxer_comp, i);
assert(muxer_port);
}
}
- conn = bt_graph_connect_ports(graph, source_port, avail_muxer_port);
- assert(conn);
- bt_put(conn);
+ graph_status = bt_graph_connect_ports(graph, source_port,
+ avail_muxer_port, NULL);
+ assert(graph_status == 0);
bt_put(avail_muxer_port);
}
struct bt_graph *graph;
int64_t i;
int64_t count;
- void *conn;
int ret;
enum bt_graph_status graph_status = BT_GRAPH_STATUS_OK;
struct graph_listener_data graph_listener_data;
ret = bt_graph_add_port_added_listener(graph,
graph_port_added_listener_connect_to_avail_muxer_port,
&graph_listener_data);
- assert(ret == 0);
+ assert(ret >= 0);
/* Connect source output ports to muxer input ports */
count = bt_component_source_get_output_port_count(src_comp);
assert(ret == 0);
for (i = 0; i < count; i++) {
- upstream_port = bt_component_source_get_output_port_at_index(
+ upstream_port = bt_component_source_get_output_port_by_index(
src_comp, i);
assert(upstream_port);
connect_port_to_first_avail_muxer_port(graph,
}
/* Connect muxer output port to sink input port */
- upstream_port = bt_component_filter_get_output_port(muxer_comp,
+ upstream_port = bt_component_filter_get_output_port_by_name(muxer_comp,
"out");
assert(upstream_port);
- downstream_port = bt_component_sink_get_default_input_port(sink_comp);
+ downstream_port = bt_component_sink_get_input_port_by_name(sink_comp, "in");
assert(downstream_port);
- conn = bt_graph_connect_ports(graph, upstream_port, downstream_port);
- assert(conn);
- bt_put(conn);
+ graph_status = bt_graph_connect_ports(graph, upstream_port,
+ downstream_port, NULL);
+ assert(graph_status == 0);
bt_put(upstream_port);
bt_put(downstream_port);
struct bt_graph *graph;
int64_t i;
int64_t count;
- void *conn;
int ret;
enum bt_graph_status graph_status = BT_GRAPH_STATUS_OK;
struct graph_listener_data graph_listener_data;
ret = bt_graph_add_port_added_listener(graph,
graph_port_added_listener_connect_to_avail_muxer_port,
&graph_listener_data);
- assert(ret == 0);
+ assert(ret >= 0);
/* Connect source output ports to muxer input ports */
count = bt_component_source_get_output_port_count(src_comp);
assert(ret == 0);
for (i = 0; i < count; i++) {
- upstream_port = bt_component_source_get_output_port_at_index(
+ upstream_port = bt_component_source_get_output_port_by_index(
src_comp, i);
assert(upstream_port);
connect_port_to_first_avail_muxer_port(graph,
}
/* Connect muxer output port to sink input port */
- upstream_port = bt_component_filter_get_output_port(muxer_comp,
+ upstream_port = bt_component_filter_get_output_port_by_name(muxer_comp,
"out");
assert(upstream_port);
- downstream_port = bt_component_sink_get_default_input_port(sink_comp);
+ downstream_port = bt_component_sink_get_input_port_by_name(sink_comp, "in");
assert(downstream_port);
- conn = bt_graph_connect_ports(graph, upstream_port, downstream_port);
- assert(conn);
- bt_put(conn);
+ graph_status = bt_graph_connect_ports(graph, upstream_port,
+ downstream_port, NULL);
+ assert(graph_status == 0);
bt_put(upstream_port);
bt_put(downstream_port);