2022-07-04 10:20:04 +08:00
|
|
|
#include <stdio.h>
|
|
|
|
#include <string.h>
|
|
|
|
|
|
|
|
static char outbuf[BUFSIZ];
|
|
|
|
static int setbuf_entry(void)
|
|
|
|
{
|
|
|
|
FILE *stream;
|
|
|
|
char test_data[] = "test setbuf";
|
|
|
|
int ret = 0;
|
|
|
|
|
|
|
|
stream = fopen("fopen_file.txt","w");
|
|
|
|
if (stream == NULL)
|
|
|
|
{
|
|
|
|
perror("fopen fail");
|
|
|
|
ret = -1;
|
|
|
|
goto __exit;
|
|
|
|
}
|
|
|
|
setbuf(stream, outbuf);
|
|
|
|
fwrite(test_data, sizeof(test_data), 1,stream);
|
|
|
|
|
|
|
|
if(strcmp(test_data, outbuf))
|
|
|
|
{
|
|
|
|
printf("setbuf test:%s\n",test_data);
|
|
|
|
ret = -1;
|
|
|
|
}
|
|
|
|
fclose(stream);
|
2023-05-17 05:55:18 +08:00
|
|
|
__exit:
|
2022-07-04 10:20:04 +08:00
|
|
|
return ret;
|
|
|
|
}
|
|
|
|
|
|
|
|
#include <utest.h>
|
|
|
|
static void test_setbuf(void)
|
|
|
|
{
|
|
|
|
uassert_int_equal(setbuf_entry(), 0);
|
|
|
|
}
|
|
|
|
static void testcase(void)
|
|
|
|
{
|
|
|
|
UTEST_UNIT_RUN(test_setbuf);
|
|
|
|
}
|
|
|
|
UTEST_TC_EXPORT(testcase, "posix.stdio_h.setbuf.c", RT_NULL, RT_NULL, 10);
|
|
|
|
|