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