X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=tests%2Flib%2Ftest_ctf_writer.c;h=596bb90da15b2bed2cbc9525e73c60d4a956f704;hb=e6a8e8e4744633807083a077ff9f101eb97d9801;hp=e50b213d0ba0ed973e7c12b2b3e36e59aae4dfb8;hpb=83509119a945fc77faff869daaf48627e1c4b3fa;p=babeltrace.git diff --git a/tests/lib/test_ctf_writer.c b/tests/lib/test_ctf_writer.c index e50b213d..596bb90d 100644 --- a/tests/lib/test_ctf_writer.c +++ b/tests/lib/test_ctf_writer.c @@ -19,7 +19,6 @@ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */ -#define _GNU_SOURCE #include #include #include @@ -31,18 +30,20 @@ #include #include #include -#include +#include #include #include #include +#include #include #include #include #include -#include +#include #include "tap/tap.h" #include #include +#include #define METADATA_LINE_SIZE 512 #define SEQUENCE_TEST_LENGTH 10 @@ -160,12 +161,12 @@ result: rewind(metadata_fp); /* Output the metadata and parser output as diagnostic */ - while (getline(&line, &len, metadata_fp) > 0) { + while (bt_getline(&line, &len, metadata_fp) > 0) { fprintf(stderr, "# %s", line); } rewind(parser_output_fp); - while (getline(&line, &len, parser_output_fp) > 0) { + while (bt_getline(&line, &len, parser_output_fp) > 0) { fprintf(stderr, "# %s", line); } @@ -257,7 +258,7 @@ result: diag("malloc error"); } rewind(babeltrace_output_fp); - while (getline(&line, &len, babeltrace_output_fp) > 0) { + while (bt_getline(&line, &len, babeltrace_output_fp) > 0) { diag("%s", line); } @@ -953,7 +954,8 @@ void append_complex_event(struct bt_ctf_stream_class *stream_class, "bt_ctf_event_class_get_id returns the correct value"); /* Test event class attributes */ - assert(obj = bt_value_integer_create_init(15)); + obj = bt_value_integer_create_init(15); + assert(obj); ok(bt_ctf_event_class_set_attribute(NULL, "id", obj), "bt_ctf_event_class_set_attribute handles a NULL event class correctly"); ok(bt_ctf_event_class_set_attribute(event_class, NULL, obj), @@ -992,7 +994,8 @@ void append_complex_event(struct bt_ctf_stream_class *stream_class, "bt_ctf_event_class_get_attribute_value_by_name returns the correct value"); BT_PUT(obj); - assert(obj = bt_value_string_create_init("nu name")); + obj = bt_value_string_create_init("nu name"); + assert(obj); assert(!bt_ctf_event_class_set_attribute(event_class, "name", obj)); ret_string = bt_ctf_event_class_get_name(event_class); ok(!strcmp(ret_string, "nu name"), @@ -2630,7 +2633,8 @@ void append_existing_event_class(struct bt_ctf_stream_class *stream_class) { struct bt_ctf_event_class *event_class; - assert(event_class = bt_ctf_event_class_create("Simple Event")); + event_class = bt_ctf_event_class_create("Simple Event"); + assert(event_class); ok(bt_ctf_stream_class_add_event_class(stream_class, event_class), "two event classes with the same name cannot cohabit within the same stream class"); bt_put(event_class); @@ -2687,7 +2691,7 @@ int main(int argc, char **argv) plan_no_plan(); - if (!mkdtemp(trace_path)) { + if (!bt_mkdtemp(trace_path)) { perror("# perror"); } @@ -2842,7 +2846,8 @@ int main(int argc, char **argv) "bt_ctf_trace_get_environment_field_value successfully replaces an existing field"); BT_PUT(obj); - if (uname(&name)) { + /* On Solaris, uname() can return any positive value on success */ + if (uname(&name) < 0) { perror("uname"); return -1; } @@ -3280,9 +3285,6 @@ int main(int argc, char **argv) bt_put(packet_header_field); bt_put(trace); free(metadata_string); - - ok(bt_ctf_stream_class_get_trace(stream_class) == NULL, - "bt_ctf_stream_class_get_trace returns NULL after its trace has been reclaimed"); bt_put(stream_class); /* Remove all trace files and delete temporary trace directory */ @@ -3294,8 +3296,20 @@ int main(int argc, char **argv) struct dirent *entry; while ((entry = readdir(trace_dir))) { - if (entry->d_type == DT_REG) { - unlinkat(dirfd(trace_dir), entry->d_name, 0); + struct stat st; + char filename[PATH_MAX]; + + if (snprintf(filename, sizeof(filename), "%s/%s", + trace_path, entry->d_name) <= 0) { + continue; + } + + if (stat(entry->d_name, &st)) { + continue; + } + + if (S_ISREG(st.st_mode)) { + unlinkat(bt_dirfd(trace_dir), entry->d_name, 0); } }