1 #include <stdio.h>
2 #include <string.h>
3
4 static char outbuf[BUFSIZ];
setbuf_entry(void)5 static int setbuf_entry(void)
6 {
7 FILE *stream;
8 char test_data[] = "test setbuf";
9 int ret = 0;
10
11 stream = fopen("fopen_file.txt","w");
12 if (stream == NULL)
13 {
14 perror("fopen fail");
15 ret = -1;
16 goto __exit;
17 }
18 setbuf(stream, outbuf);
19 fwrite(test_data, sizeof(test_data), 1,stream);
20
21 if(strcmp(test_data, outbuf))
22 {
23 printf("setbuf test:%s\n",test_data);
24 ret = -1;
25 }
26 fclose(stream);
27 __exit:
28 return ret;
29 }
30
31 #include <utest.h>
test_setbuf(void)32 static void test_setbuf(void)
33 {
34 uassert_int_equal(setbuf_entry(), 0);
35 }
testcase(void)36 static void testcase(void)
37 {
38 UTEST_UNIT_RUN(test_setbuf);
39 }
40 UTEST_TC_EXPORT(testcase, "posix.stdio_h.setbuf.c", RT_NULL, RT_NULL, 10);
41
42