* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
-#define _GNU_SOURCE
+
#include <babeltrace/context.h>
#include <babeltrace/iterator.h>
#include <babeltrace/ctf/iterator.h>
#include <stdio.h>
#include <stdlib.h>
#include <errno.h>
-#include <limits.h>
+#include <babeltrace/compat/limits.h>
#include <tap/tap.h>
#include "common.h"
-#define NR_TESTS 29
+#define NR_TESTS 36
void run_seek_begin(char *path, uint64_t expected_begin)
{
struct bt_ctf_event *event;
struct bt_iter_pos newpos;
int ret;
- uint64_t timestamp_begin;
- uint64_t timestamp_seek_begin;
+ int64_t timestamp_begin;
+ int64_t timestamp_seek_begin;
/* Open the trace */
ctx = create_context_with_path(path);
if (!ctx) {
- plan_skip_all("Cannot create valid context");
+ diag("Cannot create valid context");
+ return;
}
/* Create iterator with null begin and end */
iter = bt_ctf_iter_create(ctx, NULL, NULL);
if (!iter) {
- plan_skip_all("Cannot create valid iterator");
+ diag("Cannot create valid iterator");
+ return;
}
event = bt_ctf_iter_read_event(iter);
ok(event, "Event valid");
/* Validate that the first timestamp is right */
- timestamp_begin = bt_ctf_get_timestamp(event);
+ ok1(bt_ctf_get_timestamp(event, ×tamp_begin) == 0);
ok1(timestamp_begin == expected_begin);
ok(event, "Event valid");
- timestamp_seek_begin = bt_ctf_get_timestamp(event);
+ ok1(bt_ctf_get_timestamp(event, ×tamp_seek_begin) == 0);
ok1(timestamp_begin == timestamp_seek_begin);
struct bt_ctf_event *event;
struct bt_iter_pos newpos;
int ret;
- uint64_t timestamp_last;
+ int64_t timestamp_last;
/* Open the trace */
ctx = create_context_with_path(path);
if (!ctx) {
- plan_skip_all("Cannot create valid context");
+ diag("Cannot create valid context");
+ return;
}
/* Create iterator with null last and end */
iter = bt_ctf_iter_create(ctx, NULL, NULL);
if (!iter) {
- plan_skip_all("Cannot create valid iterator");
+ diag("Cannot create valid iterator");
+ return;
}
event = bt_ctf_iter_read_event(iter);
ok(event, "Event valid at last position");
- timestamp_last = bt_ctf_get_timestamp(event);
+ ok1(bt_ctf_get_timestamp(event, ×tamp_last) == 0);
ok1(timestamp_last == expected_last);
struct bt_ctf_event *event;
struct bt_iter_pos newpos;
int ret;
- uint64_t timestamp_last;
+ int64_t timestamp_last;
/* Open the trace */
ctx = create_context_with_path(path);
if (!ctx) {
- plan_skip_all("Cannot create valid context");
+ diag("Cannot create valid context");
+ return;
}
/* Create iterator with null last and end */
iter = bt_ctf_iter_create(ctx, NULL, NULL);
if (!iter) {
- plan_skip_all("Cannot create valid iterator");
+ diag("Cannot create valid iterator");
+ return;
}
event = bt_ctf_iter_read_event(iter);
ok(event, "Event valid at last position");
- timestamp_last = bt_ctf_get_timestamp(event);
+ ok1(bt_ctf_get_timestamp(event, ×tamp_last) == 0);
ok1(timestamp_last == expected_last);
struct bt_ctf_event *event;
struct bt_iter_pos newpos;
int ret;
- uint64_t timestamp;
+ int64_t timestamp;
/* Open the trace */
ctx = create_context_with_path(path);
if (!ctx) {
- plan_skip_all("Cannot create valid context");
+ diag("Cannot create valid context");
+ return;
}
/* Create iterator with null last and end */
iter = bt_ctf_iter_create(ctx, NULL, NULL);
if (!iter) {
- plan_skip_all("Cannot create valid iterator");
+ diag("Cannot create valid iterator");
+ return;
}
event = bt_ctf_iter_read_event(iter);
ok(event, "Event valid at last position");
- timestamp = bt_ctf_get_timestamp(event);
+ ok1(bt_ctf_get_timestamp(event, ×tamp) == 0);
ok1(timestamp == expected_last);
ok(event, "Event valid at first position");
- timestamp = bt_ctf_get_timestamp(event);
+ ok1(bt_ctf_get_timestamp(event, ×tamp) == 0);
ok1(timestamp == expected_begin);
ok(event, "Event valid at last position");
- timestamp = bt_ctf_get_timestamp(event);
+ ok1(bt_ctf_get_timestamp(event, ×tamp) == 0);
ok1(timestamp == expected_last);
plan_tests(NR_TESTS);
if (argc < 4) {
- plan_skip_all("Invalid arguments: need a trace path and the start and last timestamp");
-
+ diag("Invalid arguments: need a trace path and the start and last timestamp");
+ exit(1);
}
/* Parse arguments (Trace, begin timestamp) */
expected_begin = strtoull(argv[2], NULL, 0);
if (ULLONG_MAX == expected_begin && errno == ERANGE) {
- plan_skip_all("Invalid value for begin timestamp");
+ diag("Invalid value for begin timestamp");
+ exit(1);
}
expected_last = strtoull(argv[3], NULL, 0);
if (ULLONG_MAX == expected_last && errno == ERANGE) {
- plan_skip_all("Invalid value for last timestamp");
+ diag("Invalid value for last timestamp");
+ exit(1);
}
run_seek_begin(path, expected_begin);