1212#include " src/stdio/fgets.h"
1313#include " src/stdio/fopen.h"
1414#include " src/stdio/fwrite.h"
15+ #include " test/UnitTest/ErrnoCheckingTest.h"
16+ #include " test/UnitTest/ErrnoSetterMatcher.h"
1517#include " test/UnitTest/Test.h"
1618
17- #include " src/__support/libc_errno.h"
19+ using LlvmLibcFgetsTest = LIBC_NAMESPACE::testing::ErrnoCheckingTest;
20+ using namespace LIBC_NAMESPACE ::testing::ErrnoSetterMatcher;
1821
19- TEST (LlvmLibcFgetsTest, WriteAndReadCharacters) {
22+ TEST_F (LlvmLibcFgetsTest, WriteAndReadCharacters) {
2023 constexpr char FILENAME[] = " testdata/fgets.test" ;
2124 ::FILE *file = LIBC_NAMESPACE::fopen (FILENAME, " w" );
2225 ASSERT_FALSE (file == nullptr );
@@ -29,15 +32,15 @@ TEST(LlvmLibcFgetsTest, WriteAndReadCharacters) {
2932 char buff[8 ];
3033 char *output;
3134
32- ASSERT_EQ (WRITE_SIZE, LIBC_NAMESPACE::fwrite (CONTENT, 1 , WRITE_SIZE, file));
35+ ASSERT_THAT (LIBC_NAMESPACE::fwrite (CONTENT, 1 , WRITE_SIZE, file),
36+ Succeeds (WRITE_SIZE));
3337 // This is a write-only file so reads should fail.
34- ASSERT_TRUE (LIBC_NAMESPACE::fgets (buff, 8 , file) == nullptr );
38+ ASSERT_THAT (LIBC_NAMESPACE::fgets (buff, 8 , file), Fails (EBADF, nullptr ) );
3539 // This is an error and not a real EOF.
3640 ASSERT_EQ (LIBC_NAMESPACE::feof (file), 0 );
3741 ASSERT_NE (LIBC_NAMESPACE::ferror (file), 0 );
38- libc_errno = 0 ;
3942
40- ASSERT_EQ ( 0 , LIBC_NAMESPACE::fclose (file));
43+ ASSERT_THAT ( LIBC_NAMESPACE::fclose (file), Succeeds ( ));
4144
4245 file = LIBC_NAMESPACE::fopen (FILENAME, " r" );
4346 ASSERT_FALSE (file == nullptr );
@@ -55,6 +58,7 @@ TEST(LlvmLibcFgetsTest, WriteAndReadCharacters) {
5558 // This is also implementation defined.
5659 output = LIBC_NAMESPACE::fgets (buff, 0 , file);
5760 ASSERT_TRUE (output == nullptr );
61+ ASSERT_ERRNO_SUCCESS ();
5862#endif
5963
6064 const char *output_arr[] = {
@@ -86,5 +90,5 @@ TEST(LlvmLibcFgetsTest, WriteAndReadCharacters) {
8690 ASSERT_NE (LIBC_NAMESPACE::feof (file), 0 );
8791 ASSERT_ERRNO_SUCCESS ();
8892
89- ASSERT_EQ ( 0 , LIBC_NAMESPACE::fclose (file));
93+ ASSERT_THAT ( LIBC_NAMESPACE::fclose (file), Succeeds ( ));
9094}
0 commit comments