diff --git a/test/unit/fiob.c b/test/unit/fiob.c index e43782aacde339fbbc88e1c8d7ed599eefcd3884..55b583cd358a5d5c4ded855228a04ba3022c3ba7 100644 --- a/test/unit/fiob.c +++ b/test/unit/fiob.c @@ -22,7 +22,7 @@ -#define PLAN 68 +#define PLAN 67 #define ITEMS 7 @@ -231,15 +231,18 @@ main(void) { FILE *f = fiob_open("/dev/full", "wd"); - setvbuf(f, NULL, _IONBF, 0); - isnt(f, NULL, "fopen for writing"); - errno = 0; - fputs("test\n", f); - /* flush buffer */ - int r = fseek(f, 0, SEEK_SET); - is(errno, ENOSPC, "fwrite failed"); - is(r, EOF, "fwrite failed"); - fclose(f); + if (f) { + errno = 0; + fputs("test", f); + /* flush buffer && close file */ + int r = fclose(f); + is(errno, ENOSPC, "fwrite failed"); + is(r, EOF, "fwrite failed"); + } else { + /* System doesn't have /dev/full */ + ok(1, "fwrite failed"); + ok(1, "fwrite failed") + } } if (fork() == 0) diff --git a/test/unit/fiob.result b/test/unit/fiob.result index 7a572d5034b98fb5fe8473d7ecb7722d7ae22f9b..b57d9f9d9cb6c4d611fbf896d55c163c02893fe5 100644 --- a/test/unit/fiob.result +++ b/test/unit/fiob.result @@ -1,4 +1,4 @@ -1..68 +1..67 ok 1 - tempdir is created ok 2 - common open ok 3 - Hello world is written (12 bytes) @@ -64,6 +64,5 @@ ok 62 - all records were written properly ok 63 - eof ok 64 - feof ok 65 - fclose -ok 66 - fopen for writing +ok 66 - fwrite failed ok 67 - fwrite failed -ok 68 - fwrite failed