summaryrefslogtreecommitdiff
path: root/tests/logerr.c
diff options
context:
space:
mode:
Diffstat (limited to 'tests/logerr.c')
-rw-r--r--tests/logerr.c90
1 files changed, 60 insertions, 30 deletions
diff --git a/tests/logerr.c b/tests/logerr.c
index 8ae1140..9f9c081 100644
--- a/tests/logerr.c
+++ b/tests/logerr.c
@@ -2,24 +2,24 @@
#include <assert.h>
#include <errno.h>
+#include <stdlib.h>
#include <string.h>
#include "../src/testing.h"
-#include "../src/util.h"
#include "slurp.h"
-static const char *const
-FNAME = __FILE__ ".txt";
+static const char
+FNAME[] = __FILE__ ".txt";
static int
-test_vlogerr(void) {
+test_flogerrf(void) {
int rc = -1;
- test_start("vlogerr()");
+ test_start("flogerrf()");
FILE *file = NULL;
char *str = NULL;
@@ -33,7 +33,7 @@ test_vlogerr(void) {
}
#line 100
- vlogerr(__FILE__, __func__, __LINE__, file,
+ flogerrf(__FILE__, __func__, __LINE__, file,
"");
const int ret = fclose(file);
@@ -48,11 +48,12 @@ test_vlogerr(void) {
goto out;
}
- const char *const expected =
- "tests/logerr.c:test_vlogerr:100: \n";
+ const char expected[] =
+ "tests/logerr.c:test_flogerrf:100: \n";
assert(strcmp(expected, str) == 0);
- freeit((void *)&str);
+ free(str);
+ str = NULL;
test_ok();
}
@@ -66,7 +67,7 @@ test_vlogerr(void) {
}
#line 200
- vlogerr(__FILE__, __func__, __LINE__, file,
+ flogerrf(__FILE__, __func__, __LINE__, file,
"\n");
const int ret = fclose(file);
@@ -81,11 +82,12 @@ test_vlogerr(void) {
goto out;
}
- const char *const expected =
- "tests/logerr.c:test_vlogerr:200: \n\n";
+ const char expected[] =
+ "tests/logerr.c:test_flogerrf:200: \n\n";
assert(strcmp(expected, str) == 0);
- freeit((void *)&str);
+ free(str);
+ str = NULL;
test_ok();
}
@@ -99,7 +101,7 @@ test_vlogerr(void) {
}
#line 300
- vlogerr(__FILE__, __func__, __LINE__, file,
+ flogerrf(__FILE__, __func__, __LINE__, file,
"some static string");
const int ret = fclose(file);
@@ -114,11 +116,13 @@ test_vlogerr(void) {
goto out;
}
- const char *const expected =
- "tests/logerr.c:test_vlogerr:300: some static string\n";
+ const char expected[] =
+ "tests/logerr.c:test_flogerrf:300: "
+ "some static string\n";
assert(strcmp(expected, str) == 0);
- freeit((void *)&str);
+ free(str);
+ str = NULL;
test_ok();
}
@@ -132,7 +136,7 @@ test_vlogerr(void) {
}
#line 400
- vlogerr(__FILE__, __func__, __LINE__, file,
+ flogerrf(__FILE__, __func__, __LINE__, file,
"fn(%s)", "an-arg");
const int ret = fclose(file);
@@ -147,11 +151,12 @@ test_vlogerr(void) {
goto out;
}
- const char *const expected =
- "tests/logerr.c:test_vlogerr:400: fn(an-arg)\n";
+ const char expected[] =
+ "tests/logerr.c:test_flogerrf:400: fn(an-arg)\n";
assert(strcmp(expected, str) == 0);
- freeit((void *)&str);
+ free(str);
+ str = NULL;
test_ok();
}
@@ -165,7 +170,7 @@ test_vlogerr(void) {
}
#line 500
- vlogerr(__FILE__, __func__, __LINE__, file,
+ flogerrf(__FILE__, __func__, __LINE__, file,
"int (%d), string (%s) and char (%c)",
123,
"another-str",
@@ -183,12 +188,13 @@ test_vlogerr(void) {
goto out;
}
- const char *const expected =
- "tests/logerr.c:test_vlogerr:500: "
+ const char expected[] =
+ "tests/logerr.c:test_flogerrf:500: "
"int (123), string (another-str) and char (z)\n";
assert(strcmp(expected, str) == 0);
- freeit((void *)&str);
+ free(str);
+ str = NULL;
test_ok();
}
@@ -196,7 +202,8 @@ test_vlogerr(void) {
rc = 0;
out:
if (str != NULL) {
- freeit((void *)&str);
+ free(str);
+ str = NULL;
}
if (file != NULL) {
if (fclose(file)) {
@@ -207,10 +214,19 @@ out:
return rc;
}
-static void
+static int
test_logerr(void) {
+ int rc = -1;
+
test_start("logerr()");
+ FILE *file = fopen("/dev/null", "w");
+ if (file == NULL) {
+ perror("fopen(\"/dev/null\", \"w\")");
+ goto out;
+ }
+ logerr_set_stream(file);
+
{
testing("can be called with an empty string");
@@ -239,6 +255,17 @@ test_logerr(void) {
test_ok();
}
+
+ rc = 0;
+out:
+ logerr_set_stream(NULL);
+ if (file != NULL) {
+ if (fclose(file)) {
+ perror("fclose(file)");
+ rc = -1;
+ }
+ }
+ return rc;
}
@@ -246,12 +273,15 @@ int
main(void) {
int rc = EXIT_FAILURE;
- if (test_vlogerr()) {
- perror("test_vlogerr()");
+ if (test_flogerrf()) {
+ perror("test_flogerrf()");
goto out;
}
- test_logerr();
+ if (test_logerr()) {
+ perror("test_logerr()");
+ goto out;
+ }
rc = EXIT_SUCCESS;
out: