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