From 642d5ef709934e53cac3ce9cedb22654670932fe Mon Sep 17 00:00:00 2001 From: wangchen <253227059@qq.com> Date: Tue, 8 Nov 2022 07:26:06 +0000 Subject: [PATCH] =?UTF-8?q?fix:=20M=E6=A0=B8fs=E7=94=A8=E4=BE=8B=E6=95=B4?= =?UTF-8?q?=E6=94=B9=20=E3=80=90=E8=83=8C=E6=99=AF=E3=80=91M=E6=A0=B8fs?= =?UTF-8?q?=E7=94=A8=E4=BE=8B=E6=95=B4=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 【修改方案】 1,增加部分判断,适配fatfs 2,增加部分接口 【影响】 对现有的产品编译不会有影响。 re #I5Z4DL Signed-off-by: wangchen --- .../posix/src/fs/posix_fs_func_test.c | 1026 ++++++++++++----- 1 file changed, 718 insertions(+), 308 deletions(-) diff --git a/testsuites/unittest/posix/src/fs/posix_fs_func_test.c b/testsuites/unittest/posix/src/fs/posix_fs_func_test.c index c3754ab4..69827c27 100644 --- a/testsuites/unittest/posix/src/fs/posix_fs_func_test.c +++ b/testsuites/unittest/posix/src/fs/posix_fs_func_test.c @@ -54,24 +54,31 @@ */ LITE_TEST_SUIT(Posix, PosixFs, PosixFsFuncTestSuite); -/* Corresponding to different platforms, only need to modify TEST_ROOT */ +#if (LOSCFG_SUPPORT_FATFS == 1) +#define TEST_ROOT "system" +#endif + +#if (LOSCFG_SUPPORT_LITTLEFS == 1) #define TEST_ROOT "/littlefs" +#endif #define TEST_FILE_PTAH_RIGHT TEST_ROOT"/FILE0" /* file path, to open/rd/close */ - #define FILE0 "FILE0" /* common file name used for testing */ #define FILE1 TEST_ROOT"/FILE1" /* common file under test root path name used for testing */ -#define DIR1 TEST_ROOT"/DIR1/" /* common path under test root path name used for testing */ - -#define DIRA TEST_ROOT"/a" -#define DIRAB TEST_ROOT"/a/b" -#define DIRAC TEST_ROOT"/a/c" - +#define FILE2 TEST_ROOT"/FILE2" /* common file under test root path name used for testing */ +#define DIRA TEST_ROOT"/a" /* common file under test root path name used for testing */ +#define FILE_IN_DIRA TEST_ROOT"/a/FILE0" /* common file under test root path name used for testing */ +#define DIRAB TEST_ROOT"/a/b" /* common file under test root path name used for testing */ +#define DIRAC TEST_ROOT"/a/c" /* common file under test root path name used for testing */ #define TEST_BUF_SIZE 40 /* 40, common data for test, no special meaning */ #define TEST_SEEK_SIZE 10 /* 10, common data for test, no special meaning */ #define TEST_RW_SIZE 20 /* 20, common data for test, no special meaning */ -#define TEST_LOOPUP_TIME 20 /* 100, common data for test, no special meaning */ +#define TEST_LOOPUP_TIME 20 /* 100, common data for test, no special meaning */ + +#define TEST_MODE_NORMAL 0666 +#define TEST_MODE_HIGH 0777 + /* * * @tc.setup : setup for all testcases * @return : setup result, TRUE is success, FALSE is fail @@ -91,81 +98,6 @@ static BOOL PosixFsFuncTestSuiteTearDown(void) return TRUE; } -#if (LOSCFG_LIBC_MUSL == 1) -/* * - * @tc.number SUB_KERNEL_FS_DIRNAME_001 - * @tc.name dirname basic function test - * @tc.desc [C- SOFTWARE -0200] - */ -LITE_TEST_CASE(PosixFsFuncTestSuite, testFsDirname001, Function | MediumTest | Level1) -{ - char path[] = FILE0; - char *workDir = dirname((char *)path); - TEST_ASSERT_NOT_NULL(workDir); - TEST_ASSERT_EQUAL_STRING(".", workDir); - return 0; -} - -/* * - * @tc.number SUB_KERNEL_FS_DIRNAME_002 - * @tc.name dirname basic function test - * @tc.desc [C- SOFTWARE -0200] - */ -LITE_TEST_CASE(PosixFsFuncTestSuite, testFsDirname002, Function | MediumTest | Level1) -{ - char path[] = FILE1; - char *workDir = dirname((char *)path); - TEST_ASSERT_NOT_NULL(workDir); - TEST_ASSERT_EQUAL_STRING(TEST_ROOT, workDir); - return 0; -} - -/* * - * @tc.number SUB_KERNEL_FS_DIRNAME_003 - * @tc.name dirname basic function test - * @tc.desc [C- SOFTWARE -0200] - */ -LITE_TEST_CASE(PosixFsFuncTestSuite, testFsDirname003, Function | MediumTest | Level1) -{ - // get dir - char path[] = DIR1; - char *workDir = dirname((char *)path); - TEST_ASSERT_NOT_NULL(workDir); - TEST_ASSERT_EQUAL_STRING(TEST_ROOT, workDir); - return 0; -} - -/* * - * @tc.number SUB_KERNEL_FS_DIRNAME_004 - * @tc.name dirname basic function test for special input - * @tc.desc [C- SOFTWARE -0200] - */ -LITE_TEST_CASE(PosixFsFuncTestSuite, testFsDirname004, Function | MediumTest | Level1) -{ - // get dir - char *workDir = dirname(""); - TEST_ASSERT_NOT_NULL(workDir); - TEST_ASSERT_EQUAL_STRING(".", workDir); - - workDir = dirname(NULL); - TEST_ASSERT_NOT_NULL(workDir); - TEST_ASSERT_EQUAL_STRING(".", workDir); - - workDir = dirname("/"); - TEST_ASSERT_NOT_NULL(workDir); - TEST_ASSERT_EQUAL_STRING("/", workDir); - - workDir = dirname(".."); - TEST_ASSERT_NOT_NULL(workDir); - TEST_ASSERT_EQUAL_STRING(".", workDir); - - workDir = dirname("."); - TEST_ASSERT_NOT_NULL(workDir); - TEST_ASSERT_EQUAL_STRING(".", workDir); - return 0; -} -#endif - /* * * @tc.number SUB_KERNEL_FS_FOPEN_FCLOSE_001 * @tc.name fopen and fclose @@ -179,7 +111,7 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFopenFclose001, Function | MediumTest TEST_ASSERT_NOT_NULL(fp); ret = fclose(fp); - TEST_ASSERT_EQUAL_INT(ret, 0); + TEST_ASSERT_EQUAL_INT(0, ret); return 0; } @@ -196,7 +128,7 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFopenFclose002, Function | MediumTest TEST_ASSERT_NOT_NULL(fp); ret = fclose(fp); - TEST_ASSERT_EQUAL_INT(ret, 0); + TEST_ASSERT_EQUAL_INT(0, ret); return 0; } @@ -213,7 +145,7 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFopenFclose003, Function | MediumTest TEST_ASSERT_NOT_NULL(fp); ret = fclose(fp); - TEST_ASSERT_EQUAL_INT(ret, 0); + TEST_ASSERT_EQUAL_INT(0, ret); return 0; } @@ -230,7 +162,7 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFopenFclose004, Function | MediumTest TEST_ASSERT_NOT_NULL(fp); ret = fclose(fp); - TEST_ASSERT_EQUAL_INT(ret, 0); + TEST_ASSERT_EQUAL_INT(0, ret); return 0; } @@ -257,12 +189,12 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFopenFclose006, Function | MediumTest int ret = 0; FILE *fp = NULL; - remove(TEST_FILE_PTAH_RIGHT); + (void)remove(TEST_FILE_PTAH_RIGHT); fp = fopen(TEST_FILE_PTAH_RIGHT, "w"); TEST_ASSERT_NOT_NULL(fp); ret = fclose(fp); - TEST_ASSERT_EQUAL_INT(ret, 0); + TEST_ASSERT_EQUAL_INT(0, ret); return 0; } @@ -276,12 +208,12 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFopenFclose007, Function | MediumTest int ret = 0; FILE *fp = NULL; - remove(TEST_FILE_PTAH_RIGHT); + (void)remove(TEST_FILE_PTAH_RIGHT); fp = fopen(TEST_FILE_PTAH_RIGHT, "w+"); TEST_ASSERT_NOT_NULL(fp); ret = fclose(fp); - TEST_ASSERT_EQUAL_INT(ret, 0); + TEST_ASSERT_EQUAL_INT(0, ret); return 0; } @@ -295,12 +227,12 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFopenFclose008, Function | MediumTest int ret = 0; FILE *fp = NULL; - remove(TEST_FILE_PTAH_RIGHT); + (void)remove(TEST_FILE_PTAH_RIGHT); fp = fopen(TEST_FILE_PTAH_RIGHT, "a+"); TEST_ASSERT_NOT_NULL(fp); ret = fclose(fp); - TEST_ASSERT_EQUAL_INT(ret, 0); + TEST_ASSERT_EQUAL_INT(0, ret); return 0; } @@ -314,12 +246,12 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFopenFclose009, Function | MediumTest int ret = 0; FILE *fp = NULL; - remove(TEST_FILE_PTAH_RIGHT); + (void)remove(TEST_FILE_PTAH_RIGHT); fp = fopen(TEST_FILE_PTAH_RIGHT, "a"); TEST_ASSERT_NOT_NULL(fp); ret = fclose(fp); - TEST_ASSERT_EQUAL_INT(ret, 0); + TEST_ASSERT_EQUAL_INT(0, ret); return 0; } @@ -333,12 +265,12 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFopenFclose010, Function | MediumTest int ret = 0; FILE *fp = NULL; - remove(TEST_FILE_PTAH_RIGHT); + (void)remove(TEST_FILE_PTAH_RIGHT); fp = fopen(TEST_FILE_PTAH_RIGHT, "wr"); TEST_ASSERT_NOT_NULL(fp); ret = fclose(fp); - TEST_ASSERT_EQUAL_INT(ret, 0); + TEST_ASSERT_EQUAL_INT(0, ret); return 0; } @@ -367,15 +299,15 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFdopen001, Function | MediumTest | Le FILE *fp = NULL; int fd = 0; - remove(TEST_FILE_PTAH_RIGHT); - fd = open(TEST_FILE_PTAH_RIGHT, O_CREAT | O_RDWR, 0666); + (void)remove(TEST_FILE_PTAH_RIGHT); + fd = open(TEST_FILE_PTAH_RIGHT, O_CREAT | O_RDWR, TEST_MODE_NORMAL); TEST_ASSERT_TRUE(fd >= 0); fp = fdopen(fd, "w"); TEST_ASSERT_NOT_NULL(fp); ret = fclose(fp); - TEST_ASSERT_EQUAL_INT(ret, 0); + TEST_ASSERT_EQUAL_INT(0, ret); return 0; } @@ -390,15 +322,15 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFdopen002, Function | MediumTest | Le FILE *fp = NULL; int fd = 0; - remove(TEST_FILE_PTAH_RIGHT); - fd = open(TEST_FILE_PTAH_RIGHT, O_CREAT | O_RDWR, 0666); + (void)remove(TEST_FILE_PTAH_RIGHT); + fd = open(TEST_FILE_PTAH_RIGHT, O_CREAT | O_RDWR, TEST_MODE_NORMAL); TEST_ASSERT_TRUE(fd >= 0); fp = fdopen(fd, "w+"); TEST_ASSERT_NOT_NULL(fp); ret = fclose(fp); - TEST_ASSERT_EQUAL_INT(ret, 0); + TEST_ASSERT_EQUAL_INT(0, ret); return 0; } @@ -413,15 +345,15 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFdopen003, Function | MediumTest | Le FILE *fp = NULL; int fd = 0; - remove(TEST_FILE_PTAH_RIGHT); - fd = open(TEST_FILE_PTAH_RIGHT, O_CREAT | O_RDWR, 0666); + (void)remove(TEST_FILE_PTAH_RIGHT); + fd = open(TEST_FILE_PTAH_RIGHT, O_CREAT | O_RDWR, TEST_MODE_NORMAL); TEST_ASSERT_TRUE(fd >= 0); fp = fdopen(fd, "a"); TEST_ASSERT_NOT_NULL(fp); ret = fclose(fp); - TEST_ASSERT_EQUAL_INT(ret, 0); + TEST_ASSERT_EQUAL_INT(0, ret); return 0; } @@ -437,8 +369,8 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFdopen004, Function | MediumTest | Le FILE *fp = NULL; int fd = 0; - remove(TEST_FILE_PTAH_RIGHT); - fd = open(TEST_FILE_PTAH_RIGHT, O_CREAT | O_RDWR, 0666); + (void)remove(TEST_FILE_PTAH_RIGHT); + fd = open(TEST_FILE_PTAH_RIGHT, O_CREAT | O_RDWR, TEST_MODE_NORMAL); TEST_ASSERT_TRUE(fd >= 0); fp = fdopen(500, "w"); /* 500 is a wrong fd */ @@ -450,7 +382,7 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFdopen004, Function | MediumTest | Le fp->fd = fd; ret = fclose(fp); - TEST_ASSERT_EQUAL_INT(ret, 0); + TEST_ASSERT_EQUAL_INT(0, ret); return 0; } #endif @@ -461,7 +393,6 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFdopen004, Function | MediumTest | Le */ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFtellFseek001, Function | MediumTest | Level1) { - int ret = 0; FILE *fp = NULL; long off = 0; @@ -469,10 +400,10 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFtellFseek001, Function | MediumTest TEST_ASSERT_NOT_NULL(fp); off = ftell(fp); - TEST_ASSERT_EQUAL_INT((int)off, 0); + ICUNIT_GOTO_EQUAL((int)off, 0, (int)off, EXIT); - ret = fclose(fp); - TEST_ASSERT_EQUAL_INT(ret, 0); +EXIT: + (void)fclose(fp); return 0; } @@ -494,10 +425,10 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFtellFseek002, Function | MediumTest TEST_ASSERT_TRUE(ret != -1); off = ftell(fp); - TEST_ASSERT_EQUAL_INT((int)off, 0); + ICUNIT_GOTO_EQUAL((int)off, 0, (int)off, EXIT); - ret = fclose(fp); - TEST_ASSERT_EQUAL_INT(ret, 0); +EXIT: + (void)fclose(fp); return 0; } @@ -519,10 +450,10 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFtellFseek003, Function | MediumTest TEST_ASSERT_TRUE(ret != -1); off = ftell(fp); - TEST_ASSERT_EQUAL_INT((int)off, TEST_SEEK_SIZE); + ICUNIT_GOTO_EQUAL((int)off, TEST_SEEK_SIZE, (int)off, EXIT); - ret = fclose(fp); - TEST_ASSERT_EQUAL_INT(ret, 0); +EXIT: + (void)fclose(fp); return 0; } @@ -544,10 +475,10 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFtellFseek004, Function | MediumTest TEST_ASSERT_TRUE(ret != -1); off = ftell(fp); - TEST_ASSERT_EQUAL_INT((int)off, TEST_SEEK_SIZE); + ICUNIT_GOTO_EQUAL((int)off, TEST_SEEK_SIZE, (int)off, EXIT); - ret = fclose(fp); - TEST_ASSERT_EQUAL_INT(ret, 0); +EXIT: + (void)fclose(fp); return 0; } @@ -569,13 +500,14 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFtellFseek005, Function | MediumTest TEST_ASSERT_TRUE(ret != -1); off = ftell(fp); - TEST_ASSERT_EQUAL_INT((int)off, TEST_SEEK_SIZE); + ICUNIT_GOTO_EQUAL((int)off, TEST_SEEK_SIZE, (int)off, EXIT); - ret = fclose(fp); - TEST_ASSERT_EQUAL_INT(ret, 0); +EXIT: + (void)fclose(fp); return 0; } +#if (LOSCFG_SUPPORT_LITTLEFS == 1) /* * * @tc.number SUB_KERNEL_FS_FTELL_FSEEK_006 * @tc.name ftell and fseek @@ -594,10 +526,10 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFtellFseek006, Function | MediumTest TEST_ASSERT_EQUAL_INT(ret, -1); off = ftell(fp); - TEST_ASSERT_EQUAL_INT((int)off, 0); + ICUNIT_GOTO_EQUAL((int)off, 0, (int)off, EXIT); - ret = fclose(fp); - TEST_ASSERT_EQUAL_INT(ret, 0); +EXIT: + (void)fclose(fp); return 0; } @@ -612,17 +544,18 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFtellFseek007, Function | MediumTest FILE *fp = NULL; long off = 0; - fp = fopen(TEST_FILE_PTAH_RIGHT, "w"); + remove(TEST_FILE_PTAH_RIGHT); + fp = fopen(TEST_FILE_PTAH_RIGHT, "w+"); TEST_ASSERT_NOT_NULL(fp); ret = fseek(fp, -1L, SEEK_CUR); TEST_ASSERT_EQUAL_INT(ret, -1); off = ftell(fp); - TEST_ASSERT_EQUAL_INT((int)off, 0); + ICUNIT_GOTO_EQUAL((int)off, 0, (int)off, EXIT); - ret = fclose(fp); - TEST_ASSERT_EQUAL_INT(ret, 0); +EXIT: + (void)fclose(fp); return 0; } @@ -633,23 +566,25 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFtellFseek007, Function | MediumTest */ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFtellFseek008, Function | MediumTest | Level1) { - int ret = 0; + int ret; FILE *fp = NULL; long off = 0; - fp = fopen(TEST_FILE_PTAH_RIGHT, "w"); + remove(TEST_FILE_PTAH_RIGHT); + fp = fopen(TEST_FILE_PTAH_RIGHT, "w+"); TEST_ASSERT_NOT_NULL(fp); ret = fseek(fp, -1L, SEEK_END); TEST_ASSERT_EQUAL_INT(ret, -1); off = ftell(fp); - TEST_ASSERT_EQUAL_INT((int)off, 0); + ICUNIT_GOTO_EQUAL((int)off, 0, (int)off, EXIT); - ret = fclose(fp); - TEST_ASSERT_EQUAL_INT(ret, 0); +EXIT: + (void)fclose(fp); return 0; } +#endif /* * * @tc.number SUB_KERNEL_FS_FTELL_FSEEK_009 @@ -658,7 +593,6 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFtellFseek008, Function | MediumTest */ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFtellFseek009, Function | MediumTest | Level1) { - int ret; FILE *fp = NULL; long off = 0; @@ -666,13 +600,13 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFtellFseek009, Function | MediumTest TEST_ASSERT_NOT_NULL(fp); /* wrong input, fs may return not error, no need to check return value */ - ret = fseek(fp, TEST_SEEK_SIZE, 5); /* 5, a wrong input */ + (void)fseek(fp, TEST_SEEK_SIZE, 5); /* 5, a wrong input */ off = ftell(fp); - TEST_ASSERT_EQUAL_INT(off, 0); + ICUNIT_GOTO_EQUAL((int)off, 0, (int)off, EXIT); - ret = fclose(fp); - TEST_ASSERT_EQUAL_INT(ret, 0); +EXIT: + (void)fclose(fp); return 0; } @@ -686,7 +620,6 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFtellFseek010, Function | MediumTest { int ret = 0; FILE *fp = NULL; - long off = 0; int fd; fp = fopen(TEST_FILE_PTAH_RIGHT, "w"); @@ -702,7 +635,7 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFtellFseek010, Function | MediumTest fp->fd = fd; ret = fclose(fp); - TEST_ASSERT_EQUAL_INT(ret, 0); + TEST_ASSERT_EQUAL_INT(0, ret); return 0; } #endif @@ -727,10 +660,10 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFtellFseek011, Function | MediumTest TEST_ASSERT_TRUE(ret != -1); off = ftell(fp); - TEST_ASSERT_EQUAL_INT((int)off, (TEST_SEEK_SIZE + TEST_SEEK_SIZE)); + ICUNIT_GOTO_EQUAL((int)off, (TEST_SEEK_SIZE + TEST_SEEK_SIZE), (int)off, EXIT); - ret = fclose(fp); - TEST_ASSERT_EQUAL_INT(ret, 0); +EXIT: + (void)fclose(fp); return 0; } @@ -756,13 +689,14 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFtellFseek012, Function | MediumTest TEST_ASSERT_TRUE(ret != -1); off = ftell(fp); - TEST_ASSERT_EQUAL_INT((int)off, TEST_SEEK_SIZE); + ICUNIT_GOTO_EQUAL((int)off, TEST_SEEK_SIZE, (int)off, EXIT); - ret = fclose(fp); - TEST_ASSERT_EQUAL_INT(ret, 0); +EXIT: + (void)fclose(fp); return 0; } +#if (LOSCFG_SUPPORT_LITTLEFS == 1) /* * * @tc.number SUB_KERNEL_FS_FTELL_FSEEK_013 * @tc.name ftell and fseek @@ -779,17 +713,17 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFtellFseek013, Function | MediumTest ret = fseek(fp, TEST_SEEK_SIZE, SEEK_SET); TEST_ASSERT_TRUE(ret != -1); - ret = fseek(fp, TEST_SEEK_SIZE, SEEK_END); TEST_ASSERT_TRUE(ret != -1); off = ftell(fp); - TEST_ASSERT_EQUAL_INT((int)off, TEST_SEEK_SIZE); + ICUNIT_GOTO_EQUAL((int)off, TEST_SEEK_SIZE, (int)off, EXIT); - ret = fclose(fp); - TEST_ASSERT_EQUAL_INT(ret, 0); +EXIT: + (void)fclose(fp); return 0; } +#endif /* * * @tc.number SUB_KERNEL_FS_FTELL_FSEEK_014 @@ -811,10 +745,10 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFtellFseek014, Function | MediumTest rewind(fp); off = ftell(fp); - TEST_ASSERT_EQUAL_INT((int)off, 0); + ICUNIT_GOTO_EQUAL((int)off, 0, (int)off, EXIT); - ret = fclose(fp); - TEST_ASSERT_EQUAL_INT(ret, 0); +EXIT: + (void)fclose(fp); return 0; } @@ -838,11 +772,12 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFtellFseek015, Function | MediumTest rewind(fp); off = ftell(fp); - TEST_ASSERT_EQUAL_INT((int)off, 0); + ICUNIT_GOTO_EQUAL((int)off, 0, (int)off, EXIT); - ret = fclose(fp); - TEST_ASSERT_EQUAL_INT(ret, 0); +EXIT: + (void)fclose(fp); return 0; + } /* * @@ -852,7 +787,7 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFtellFseek015, Function | MediumTest */ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFtellFseek016, Function | MediumTest | Level1) { - int ret = 0; + int ret; FILE *fp = NULL; long off = 0; @@ -865,10 +800,10 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFtellFseek016, Function | MediumTest rewind(fp); off = ftell(fp); - TEST_ASSERT_EQUAL_INT((int)off, 0); + ICUNIT_GOTO_EQUAL((int)off, 0, (int)off, EXIT); - ret = fclose(fp); - TEST_ASSERT_EQUAL_INT(ret, 0); +EXIT: + (void)fclose(fp); return 0; } @@ -879,7 +814,7 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFtellFseek016, Function | MediumTest */ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFputs001, Function | MediumTest | Level1) { - int ret = 0; + int ret; FILE *fp = NULL; const char chr1[TEST_BUF_SIZE] = "hello"; @@ -890,7 +825,7 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFputs001, Function | MediumTest | Lev TEST_ASSERT_TRUE(ret != -1); ret = fclose(fp); - TEST_ASSERT_EQUAL_INT(ret, 0); + TEST_ASSERT_EQUAL_INT(0, ret); return 0; } @@ -901,7 +836,7 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFputs001, Function | MediumTest | Lev */ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFputs002, Function | MediumTest | Level1) { - int ret = 0; + int ret; FILE *fp = NULL; const char chr1[TEST_BUF_SIZE] = "hello"; @@ -912,7 +847,7 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFputs002, Function | MediumTest | Lev TEST_ASSERT_TRUE(ret != -1); ret = fclose(fp); - TEST_ASSERT_EQUAL_INT(ret, 0); + TEST_ASSERT_EQUAL_INT(0, ret); return 0; } @@ -923,7 +858,7 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFputs002, Function | MediumTest | Lev */ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFputs003, Function | MediumTest | Level1) { - int ret = 0; + int ret; FILE *fp = NULL; const char chr1[TEST_BUF_SIZE] = "hello"; @@ -934,7 +869,7 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFputs003, Function | MediumTest | Lev TEST_ASSERT_TRUE(ret != -1); ret = fclose(fp); - TEST_ASSERT_EQUAL_INT(ret, 0); + TEST_ASSERT_EQUAL_INT(0, ret); return 0; } @@ -945,7 +880,7 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFputs003, Function | MediumTest | Lev */ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFputs004, Function | MediumTest | Level1) { - int ret = 0; + int ret; FILE *fp = NULL; const char chr1[TEST_BUF_SIZE] = "hello"; char str[TEST_BUF_SIZE] = {0}; @@ -961,10 +896,10 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFputs004, Function | MediumTest | Lev TEST_ASSERT_TRUE(ret != -1); ret = strcmp(str, "hello"); - TEST_ASSERT_EQUAL_INT(ret, 0); + TEST_ASSERT_EQUAL_INT(0, ret); ret = fclose(fp); - TEST_ASSERT_EQUAL_INT(ret, 0); + TEST_ASSERT_EQUAL_INT(0, ret); return 0; } @@ -975,7 +910,7 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFputs004, Function | MediumTest | Lev */ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFputs005, Function | MediumTest | Level1) { - int ret = 0; + int ret; FILE *fp = NULL; const char chr1[TEST_BUF_SIZE] = "hello"; int i; @@ -992,7 +927,7 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFputs005, Function | MediumTest | Lev TEST_ASSERT_EQUAL_INT(ret, TEST_LOOPUP_TIME * strlen(chr1)); ret = fclose(fp); - TEST_ASSERT_EQUAL_INT(ret, 0); + TEST_ASSERT_EQUAL_INT(0, ret); return 0; } @@ -1003,7 +938,7 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFputs005, Function | MediumTest | Lev */ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFreadFwrite001, Function | MediumTest | Level1) { - int ret = 0; + int ret; FILE *fp = NULL; const char chr1[TEST_BUF_SIZE] = "hello"; @@ -1015,7 +950,7 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFreadFwrite001, Function | MediumTest TEST_ASSERT_TRUE(ret != -1); ret = fclose(fp); - TEST_ASSERT_EQUAL_INT(ret, 0); + TEST_ASSERT_EQUAL_INT(0, ret); return 0; } @@ -1026,7 +961,7 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFreadFwrite001, Function | MediumTest */ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFreadFwrite002, Function | MediumTest | Level1) { - int ret = 0; + int ret; FILE *fp = NULL; fp = fopen(TEST_FILE_PTAH_RIGHT, "w"); @@ -1036,7 +971,7 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFreadFwrite002, Function | MediumTest TEST_ASSERT_TRUE(ret != -1); ret = fclose(fp); - TEST_ASSERT_EQUAL_INT(ret, 0); + TEST_ASSERT_EQUAL_INT(0, ret); return 0; } @@ -1047,9 +982,8 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFreadFwrite002, Function | MediumTest */ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFreadFwrite003, Function | MediumTest | Level1) { - int ret = 0; + int ret; FILE *fp = NULL; - const char chr1[TEST_BUF_SIZE] = "hello"; fp = fopen(TEST_FILE_PTAH_RIGHT, "r"); @@ -1059,7 +993,7 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFreadFwrite003, Function | MediumTest TEST_ASSERT_TRUE(ret != -1); ret = fclose(fp); - TEST_ASSERT_EQUAL_INT(ret, 0); + TEST_ASSERT_EQUAL_INT(0, ret); return 0; } @@ -1070,7 +1004,7 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFreadFwrite003, Function | MediumTest */ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFreadFwrite004, Function | MediumTest | Level1) { - int ret = 0; + int ret; FILE *fp = NULL; fp = fopen(TEST_FILE_PTAH_RIGHT, "r"); @@ -1080,7 +1014,7 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFreadFwrite004, Function | MediumTest TEST_ASSERT_TRUE(ret != -1); ret = fclose(fp); - TEST_ASSERT_EQUAL_INT(ret, 0); + TEST_ASSERT_EQUAL_INT(0, ret); return 0; } @@ -1091,9 +1025,8 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFreadFwrite004, Function | MediumTest */ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFreadFwrite005, Function | MediumTest | Level1) { - int ret = 0; + int ret; FILE *fp = NULL; - const char chr1[TEST_BUF_SIZE] = "hello"; fp = fopen(TEST_FILE_PTAH_RIGHT, "a"); @@ -1103,7 +1036,7 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFreadFwrite005, Function | MediumTest TEST_ASSERT_TRUE(ret != -1); ret = fclose(fp); - TEST_ASSERT_EQUAL_INT(ret, 0); + TEST_ASSERT_EQUAL_INT(0, ret); return 0; } @@ -1114,7 +1047,7 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFreadFwrite005, Function | MediumTest */ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFreadFwrite006, Function | MediumTest | Level1) { - int ret = 0; + int ret; FILE *fp = NULL; const char chr1[TEST_BUF_SIZE] = "hello"; @@ -1141,10 +1074,10 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFreadFwrite006, Function | MediumTest TEST_ASSERT_TRUE(ret != -1); ret = strcmp(str, "helloworld"); - TEST_ASSERT_EQUAL_INT(ret, 0); + TEST_ASSERT_EQUAL_INT(0, ret); ret = fclose(fp); - TEST_ASSERT_EQUAL_INT(ret, 0); + TEST_ASSERT_EQUAL_INT(0, ret); return 0; } @@ -1156,7 +1089,7 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFreadFwrite006, Function | MediumTest */ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFreadFwrite007, Function | MediumTest | Level1) { - int ret = 0; + int ret; FILE *fp = NULL; const char chr1[TEST_BUF_SIZE] = "hello"; @@ -1179,10 +1112,10 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFreadFwrite007, Function | MediumTest TEST_ASSERT_TRUE(ret != -1); ret = strcmp(str, "helloworld"); - TEST_ASSERT_EQUAL_INT(ret, 0); + TEST_ASSERT_EQUAL_INT(0, ret); ret = fclose(fp); - TEST_ASSERT_EQUAL_INT(ret, 0); + TEST_ASSERT_EQUAL_INT(0, ret); return 0; } @@ -1221,10 +1154,10 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFreadFwrite008, Function | MediumTest TEST_ASSERT_TRUE(ret != -1); ret = strncmp(str, "hellohelloworldworld", TEST_RW_SIZE); - TEST_ASSERT_EQUAL_INT(ret, 0); + TEST_ASSERT_EQUAL_INT(0, ret); ret = fclose(fp); - TEST_ASSERT_EQUAL_INT(ret, 0); + TEST_ASSERT_EQUAL_INT(0, ret); return 0; } @@ -1256,10 +1189,57 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFreadFwrite009, Function | MediumTest TEST_ASSERT_TRUE(ret != -1); ret = strncmp(str, "1234512345123451234512345", TEST_RW_SIZE); - TEST_ASSERT_EQUAL_INT(ret, 0); + TEST_ASSERT_EQUAL_INT(0, ret); ret = fclose(fp); - TEST_ASSERT_EQUAL_INT(ret, 0); + TEST_ASSERT_EQUAL_INT(0, ret); + return 0; +} + +/* * + * @tc.number SUB_KERNEL_FS_OPENDIR_001 + * @tc.name opendir + * @tc.desc [C- SOFTWARE -0200] + */ +LITE_TEST_CASE(PosixFsFuncTestSuite, testFsOpendir001, Function | MediumTest | Level1) +{ + DIR *dir = NULL; + + dir = opendir(TEST_ROOT); + TEST_ASSERT_NOT_NULL(dir); + + (void)closedir(dir); + + return 0; +} + +/* * + * @tc.number SUB_KERNEL_FS_OPENDIR_002 + * @tc.name opendir + * @tc.desc [C- SOFTWARE -0200] + */ +LITE_TEST_CASE(PosixFsFuncTestSuite, testFsOpendir002, Function | MediumTest | Level1) +{ + DIR *dir = NULL; + + remove(DIRA); + dir = opendir(DIRA); + TEST_ASSERT_NULL(dir); + return 0; +} + +/* * + * @tc.number SUB_KERNEL_FS_OPENDIR_003 + * @tc.name opendir + * @tc.desc [C- SOFTWARE -0200] + */ +LITE_TEST_CASE(PosixFsFuncTestSuite, testFsOpendir003, Function | MediumTest | Level1) +{ + DIR *dir = NULL; + + dir = opendir(NULL); + TEST_ASSERT_NULL(dir); + return 0; } @@ -1272,9 +1252,11 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsReaddir001, Function | MediumTest | L { DIR *dirp; struct dirent *dResult; - int ret = 0; + int ret; + + (void)mkdir(DIRA, TEST_MODE_NORMAL); + (void)mkdir(DIRAB, TEST_MODE_NORMAL); - ret = mkdir(DIRA, 0777); dirp = opendir(DIRA); TEST_ASSERT_NOT_NULL(dirp); @@ -1282,8 +1264,10 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsReaddir001, Function | MediumTest | L TEST_ASSERT_NOT_NULL(dResult); ret = closedir(dirp); - TEST_ASSERT_EQUAL_INT(ret, 0); - ret = rmdir(DIRA); + TEST_ASSERT_EQUAL_INT(0, ret); + + (void)rmdir(DIRAB); + (void)rmdir(DIRA); return 0; } @@ -1298,24 +1282,45 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsReaddir002, Function | MediumTest | L struct dirent *dResult; off_t tellDir0; off_t tellDir1; - int ret; - ret = mkdir(DIRA, 0777); - dirp = opendir((DIRA)); + (void)mkdir(DIRA, TEST_MODE_NORMAL); + (void)mkdir(DIRAB, TEST_MODE_NORMAL); + (void)mkdir(DIRAC, TEST_MODE_NORMAL); + + dirp = opendir(DIRA); TEST_ASSERT_NOT_NULL(dirp); dResult = readdir(dirp); - TEST_ASSERT_NOT_NULL(dirp); TEST_ASSERT_NOT_NULL(dResult); tellDir0 = dResult->d_off; dResult = readdir(dirp); - TEST_ASSERT_NOT_NULL(dirp); TEST_ASSERT_NOT_NULL(dResult); tellDir1 = dResult->d_off; - TEST_ASSERT_TRUE(tellDir0 == tellDir1); - ret = rmdir(DIRA); + + (void)rmdir(DIRAC); + (void)rmdir(DIRAB); + (void)rmdir(DIRA); + return 0; +} + +/* * + * @tc.number SUB_KERNEL_FS_READDIR_003 + * @tc.name readdir + * @tc.desc [C- SOFTWARE -0200] + */ +LITE_TEST_CASE(PosixFsFuncTestSuite, testFsReaddir003, Function | MediumTest | Level1) +{ + DIR *dirp; + struct dirent *dResult; + + dirp = opendir(NULL); + TEST_ASSERT_NULL(dirp); + + dResult = readdir(dirp); + TEST_ASSERT_NULL(dResult); + return 0; } @@ -1326,13 +1331,13 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsReaddir002, Function | MediumTest | L */ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsRemove001, Function | MediumTest | Level1) { - FILE *fp = NULL; - int ret; + int fd; + int ret = 0; - fp = fopen(TEST_FILE_PTAH_RIGHT, "w"); - fclose(fp); + fd = open(TEST_FILE_PTAH_RIGHT, O_CREAT | O_RDWR, TEST_MODE_NORMAL); + close(fd); ret = remove(TEST_FILE_PTAH_RIGHT); - TEST_ASSERT_EQUAL_INT(ret, 0); + TEST_ASSERT_EQUAL_INT(0, ret); return 0; } @@ -1343,12 +1348,51 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsRemove001, Function | MediumTest | Le */ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsRemove002, Function | MediumTest | Level1) { - int ret; + int ret = 0; - ret = mkdir(DIRA, 0777); - TEST_ASSERT_EQUAL_INT(ret, 0); + ret = mkdir(DIRA, TEST_MODE_NORMAL); + TEST_ASSERT_EQUAL_INT(0, ret); ret = remove(DIRA); - TEST_ASSERT_EQUAL_INT(ret, 0); + TEST_ASSERT_EQUAL_INT(0, ret); + return 0; +} + +/* * + * @tc.number SUB_KERNEL_FS_REMOVE_003 + * @tc.name remove + * @tc.desc [C- SOFTWARE -0200] + */ +LITE_TEST_CASE(PosixFsFuncTestSuite, testFsRemove003, Function | MediumTest | Level1) +{ + int ret = 0; + ret = remove(DIRA); + TEST_ASSERT_NOT_EQUAL(0, ret); + return 0; +} + +/* * + * @tc.number SUB_KERNEL_FS_REMOVE_004 + * @tc.name remove + * @tc.desc [C- SOFTWARE -0200] + */ +LITE_TEST_CASE(PosixFsFuncTestSuite, testFsRemove004, Function | MediumTest | Level1) +{ + int ret = 0; + + (void)mkdir(DIRA, TEST_MODE_NORMAL); + + ret = mkdir(DIRAC, TEST_MODE_NORMAL); + TEST_ASSERT_EQUAL_INT(0, ret); + + ret = remove(DIRA); + TEST_ASSERT_NOT_EQUAL(0, ret); + + ret = remove(DIRAC); + TEST_ASSERT_EQUAL(0, ret); + + ret = remove(DIRA); + TEST_ASSERT_EQUAL(0, ret); + return 0; } @@ -1361,17 +1405,16 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsRmdir001, Function | MediumTest | Lev { int ret = 0; - ret = mkdir(DIRA, 0777); - TEST_ASSERT_EQUAL_INT(ret, 0); + (void)mkdir(DIRA, TEST_MODE_NORMAL); - ret = mkdir(DIRAB, 0777); - TEST_ASSERT_EQUAL_INT(ret, 0); + ret = mkdir(DIRAB, TEST_MODE_NORMAL); + TEST_ASSERT_EQUAL_INT(0, ret); ret = rmdir(DIRAB); - TEST_ASSERT_EQUAL_INT(ret, 0); + TEST_ASSERT_EQUAL_INT(0, ret); ret = rmdir(DIRA); - TEST_ASSERT_EQUAL_INT(ret, 0); + TEST_ASSERT_EQUAL_INT(0, ret); return 0; } @@ -1384,23 +1427,61 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsRmdir002, Function | MediumTest | Lev { int ret = 0; - ret = mkdir(DIRA, 0777); - TEST_ASSERT_EQUAL_INT(ret, 0); + (void)mkdir(DIRA, TEST_MODE_NORMAL); - ret = mkdir(DIRAB, 0777); - TEST_ASSERT_EQUAL_INT(ret, 0); + ret = mkdir(DIRAB, TEST_MODE_NORMAL); + TEST_ASSERT_EQUAL_INT(0, ret); - ret = mkdir(DIRAC, 0777); - TEST_ASSERT_EQUAL_INT(ret, 0); + ret = mkdir(DIRAC, TEST_MODE_NORMAL); + TEST_ASSERT_EQUAL_INT(0, ret); ret = rmdir(DIRAB); - TEST_ASSERT_EQUAL_INT(ret, 0); + TEST_ASSERT_EQUAL_INT(0, ret); ret = rmdir(DIRAC); - TEST_ASSERT_EQUAL_INT(ret, 0); + TEST_ASSERT_EQUAL_INT(0, ret); ret = rmdir(DIRA); - TEST_ASSERT_EQUAL_INT(ret, 0); + TEST_ASSERT_EQUAL_INT(0, ret); + return 0; +} + +/* * + * @tc.number SUB_KERNEL_FS_RMDIR_003 + * @tc.name rmdir + * @tc.desc [C- SOFTWARE -0200] + */ +LITE_TEST_CASE(PosixFsFuncTestSuite, testFsRmdir003, Function | MediumTest | Level1) +{ + int ret; + + (void)mkdir(DIRA, TEST_MODE_NORMAL); + + ret = mkdir(DIRAB, TEST_MODE_NORMAL); + TEST_ASSERT_EQUAL_INT(0, ret); + + ret = rmdir(DIRA); + TEST_ASSERT_NOT_EQUAL(0, ret); + + ret = rmdir(DIRAB); + TEST_ASSERT_EQUAL_INT(0, ret); + + ret = rmdir(DIRA); + TEST_ASSERT_EQUAL_INT(0, ret); + return 0; +} + +/* * + * @tc.number SUB_KERNEL_FS_RMDIR_004 + * @tc.name rmdir + * @tc.desc [C- SOFTWARE -0200] + */ +LITE_TEST_CASE(PosixFsFuncTestSuite, testFsRmdir004, Function | MediumTest | Level1) +{ + int ret; + + ret = rmdir(NULL); + TEST_ASSERT_NOT_EQUAL(0, ret); return 0; } @@ -1411,17 +1492,31 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsRmdir002, Function | MediumTest | Lev */ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsUnlink001, Function | MediumTest | Level1) { - int ret = 0; - int fd = 0; + int ret; + int fd; char tmpFileName[]= FILE1; - fd = open(tmpFileName, O_CREAT | O_RDWR, 0777); + fd = open(tmpFileName, O_CREAT | O_RDWR, TEST_MODE_NORMAL); TEST_ASSERT_TRUE(fd != -1); (void)close(fd); ret = unlink(tmpFileName); - TEST_ASSERT_TRUE(ret != -1); + TEST_ASSERT_EQUAL(0, ret); + return 0; +} + +/* * + * @tc.number SUB_KERNEL_FS_UNLINK_002 + * @tc.name unlink + * @tc.desc [C- SOFTWARE -0200] + */ +LITE_TEST_CASE(PosixFsFuncTestSuite, testFsUnlink002, Function | MediumTest | Level1) +{ + int ret; + + ret = unlink(NULL); + TEST_ASSERT_NOT_EQUAL(0, ret); return 0; } @@ -1433,12 +1528,12 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsUnlink001, Function | MediumTest | Le LITE_TEST_CASE(PosixFsFuncTestSuite, testFsStat001, Function | MediumTest | Level1) { struct stat buf; - int fd = 0; + int fd; char tmpFileName[]= FILE1; - int ret = 0; + int ret; remove(FILE1); - fd = open(tmpFileName, O_CREAT | O_RDWR, 0777); + fd = open(tmpFileName, O_CREAT | O_RDWR, TEST_MODE_NORMAL); TEST_ASSERT_TRUE(fd != -1); (void)close(fd); @@ -1458,12 +1553,12 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsStat002, Function | MediumTest | Leve struct stat buf; int fd = 0; char tmpFileName[]= FILE1; - int ret = 0; - ssize_t size = 0; + int ret; + ssize_t size; char writeBuf[TEST_BUF_SIZE] = "write test"; remove(FILE1); - fd = open(tmpFileName, O_CREAT | O_RDWR, 0777); + fd = open(tmpFileName, O_CREAT | O_RDWR, TEST_MODE_NORMAL); TEST_ASSERT_TRUE(fd != -1); size = write(fd, writeBuf, sizeof(writeBuf)); @@ -1472,7 +1567,6 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsStat002, Function | MediumTest | Leve ret = stat(tmpFileName, &buf); TEST_ASSERT_TRUE(ret != -1); - TEST_ASSERT_TRUE(buf.st_size == sizeof(writeBuf)); return 0; } @@ -1487,12 +1581,12 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsStat003, Function | MediumTest | Leve struct stat buf; int fd; char tmpFileName[]= FILE1; - int ret = 0; + int ret; ssize_t size; char writeBuf[TEST_BUF_SIZE] = "write test"; (void)memset_s(&buf, sizeof(buf), 0, sizeof(buf)); - fd = open(tmpFileName, O_CREAT | O_RDWR, 0777); + fd = open(tmpFileName, O_CREAT | O_RDWR, TEST_MODE_NORMAL); TEST_ASSERT_TRUE(fd != -1); size = write(fd, writeBuf, sizeof(writeBuf)); @@ -1502,10 +1596,189 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsStat003, Function | MediumTest | Leve ret = stat(tmpFileName, &buf); TEST_ASSERT_TRUE(ret != -1); - TEST_ASSERT_EQUAL_INT(buf.st_rdev, 0); + TEST_ASSERT_EQUAL_INT(0, buf.st_rdev); return 0; } +/* * + * @tc.number SUB_KERNEL_FS_RENAME_001 + * @tc.name rename + * @tc.desc [C- SOFTWARE -0200] + */ +LITE_TEST_CASE(PosixFsFuncTestSuite, testFsRename001, Function | MediumTest | Level1) +{ + int ret; + int fd; + + (void)remove(FILE1); + (void)remove(FILE2); + + fd = open(FILE1, O_CREAT | O_RDWR, TEST_MODE_NORMAL); + TEST_ASSERT_TRUE(fd != -1); + (void)close(fd); + + ret = rename(FILE1, FILE2); + TEST_ASSERT_EQUAL_INT(0, ret); + + ret = remove(FILE1); + TEST_ASSERT_NOT_EQUAL(0, ret); + + ret = remove(FILE2); + TEST_ASSERT_EQUAL(0, ret); + return 0; +} + +/* * + * @tc.number SUB_KERNEL_FS_RENAME_002 + * @tc.name rename + * @tc.desc [C- SOFTWARE -0200] + */ +LITE_TEST_CASE(PosixFsFuncTestSuite, testFsRename002, Function | MediumTest | Level1) +{ + int ret; + int fd; + + (void)remove(FILE1); + + fd = open(FILE1, O_CREAT | O_RDWR, TEST_MODE_NORMAL); + TEST_ASSERT_TRUE(fd != -1); + (void)close(fd); + + ret = rename(FILE1, NULL); + TEST_ASSERT_NOT_EQUAL(0, ret); + + return 0; +} + +/* * + * @tc.number SUB_KERNEL_FS_RENAME_003 + * @tc.name rename + * @tc.desc [C- SOFTWARE -0200] + */ +LITE_TEST_CASE(PosixFsFuncTestSuite, testFsRename003, Function | MediumTest | Level1) +{ + int ret; + + (void)remove(FILE1); + + ret = rename(NULL, FILE1); + TEST_ASSERT_NOT_EQUAL(0, ret); + + return 0; +} + +/* * + * @tc.number SUB_KERNEL_FS_OPEN_001 + * @tc.name open + * @tc.desc [C- SOFTWARE -0200] + */ +LITE_TEST_CASE(PosixFsFuncTestSuite, testFsOpen001, Function | MediumTest | Level1) +{ + int fd; + + (void)remove(FILE1); + + fd = open(FILE1, O_RDWR, TEST_MODE_NORMAL); + TEST_ASSERT_EQUAL(-1, fd); + + return 0; +} + +/* * + * @tc.number SUB_KERNEL_FS_OPEN_002 + * @tc.name open + * @tc.desc [C- SOFTWARE -0200] + */ +LITE_TEST_CASE(PosixFsFuncTestSuite, testFsOpen002, Function | MediumTest | Level1) +{ + int fd; + + (void)remove(FILE_IN_DIRA); + (void)mkdir(DIRA, TEST_MODE_NORMAL); + + fd = open(FILE_IN_DIRA, O_CREAT | O_RDWR, TEST_MODE_HIGH); + TEST_ASSERT_TRUE(fd != -1); + (void)close(fd); + + return 0; +} + +/* * + * @tc.number SUB_KERNEL_FS_OPEN_004 + * @tc.name open + * @tc.desc [C- SOFTWARE -0200] + */ +LITE_TEST_CASE(PosixFsFuncTestSuite, testFsOpen003, Function | MediumTest | Level1) +{ + int fd; + ssize_t size; + char writeBuf[TEST_BUF_SIZE] = "write test"; + + (void)remove(FILE1); + + fd = open(FILE1, O_CREAT | O_RDONLY, TEST_MODE_NORMAL); + TEST_ASSERT_TRUE(fd != -1); + size = write(fd, writeBuf, sizeof(writeBuf)); + TEST_ASSERT_TRUE(size <= 0); + (void)close(fd); + + return 0; +} + +/* * + * @tc.number SUB_KERNEL_FS_OPEN_004 + * @tc.name open + * @tc.desc [C- SOFTWARE -0200] + */ +LITE_TEST_CASE(PosixFsFuncTestSuite, testFsOpen004, Function | MediumTest | Level1) +{ + int fd; + + (void)rmdir(DIRA); + fd = open(FILE_IN_DIRA, O_CREAT | O_RDWR, TEST_MODE_NORMAL); + TEST_ASSERT_TRUE(fd != -1); + + return 0; +} + +/* * + * @tc.number SUB_KERNEL_FS_OPEN_005 + * @tc.name open + * @tc.desc [C- SOFTWARE -0200] + */ +LITE_TEST_CASE(PosixFsFuncTestSuite, testFsOpen005, Function | MediumTest | Level1) +{ + int fd; + + (void)rmdir(DIRA); + fd = open(NULL, O_CREAT | O_RDWR, TEST_MODE_NORMAL); + TEST_ASSERT_TRUE(fd == -1); + + return 0; +} + +/* * + * @tc.number SUB_KERNEL_FS_CLOSE_005 + * @tc.name close + * @tc.desc [C- SOFTWARE -0200] + */ +LITE_TEST_CASE(PosixFsFuncTestSuite, testFsClose001, Function | MediumTest | Level1) +{ + int ret; + int fd; + + (void)remove(FILE1); + + fd = open(FILE1, O_CREAT | O_RDWR, TEST_MODE_NORMAL); + TEST_ASSERT_TRUE(fd != -1); + + (void)close(fd); + ret = close(fd); + TEST_ASSERT_NOT_EQUAL(0, ret); + return 0; + +} + /* * * extern lseek is necessary, Otherwise it will cause stacking errors */ @@ -1522,34 +1795,27 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsWrite001, Function | MediumTest | Lev int fd = 0; char writeBuf[TEST_BUF_SIZE]; int ret = 0; - char tmpFileName[]= FILE1; for (int i = 0; i < TEST_BUF_SIZE; i++) { writeBuf[i] = '1'; } - fd = open(tmpFileName, O_CREAT | O_RDWR, 0777); + fd = open(FILE1, O_CREAT | O_RDWR, TEST_MODE_NORMAL); TEST_ASSERT_TRUE(fd != -1); ret = write(fd, writeBuf, TEST_RW_SIZE); - if (ret == -1) { - (void)close(fd); - } - TEST_ASSERT_TRUE(ret != -1); + ICUNIT_GOTO_NOT_EQUAL(ret, -1, ret, EXIT); - reLseek = lseek(fd, 0, SEEK_CUR); + (void)lseek(fd, 0, SEEK_CUR); ret = write(fd, writeBuf, TEST_RW_SIZE); - if (ret == -1) { - (void)close(fd); - } - TEST_ASSERT_TRUE(ret != -1); + ICUNIT_GOTO_NOT_EQUAL(ret, -1, ret, EXIT); reLseek = lseek(fd, 0, SEEK_CUR); + ICUNIT_GOTO_EQUAL((unsigned int)reLseek, (TEST_RW_SIZE + TEST_RW_SIZE), (unsigned int)reLseek, EXIT); + +EXIT: (void)close(fd); - - TEST_ASSERT_TRUE((TEST_RW_SIZE + TEST_RW_SIZE) == (unsigned int)reLseek); - return 0; } @@ -1564,27 +1830,140 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsWrite002, Function | MediumTest | Lev char writeBuf[TEST_BUF_SIZE] = "0123456789"; int ret = 0; struct stat statbuf; - char tmpFileName[]= FILE1; int i; remove(FILE1); - fd = open(tmpFileName, O_CREAT | O_RDWR, 0777); + fd = open(FILE1, O_CREAT | O_RDWR, TEST_MODE_NORMAL); TEST_ASSERT_TRUE(fd != -1); for (i = 0; i < TEST_LOOPUP_TIME; i++) { ret = write(fd, writeBuf, sizeof(writeBuf)); + ICUNIT_GOTO_NOT_EQUAL(ret, -1, ret, EXIT); } (void)close(fd); - TEST_ASSERT_TRUE(ret != -1); - ret = stat(tmpFileName, &statbuf); + ret = stat(FILE1, &statbuf); TEST_ASSERT_TRUE(ret != -1); - TEST_ASSERT_TRUE(statbuf.st_size == sizeof(writeBuf) * TEST_LOOPUP_TIME); return 0; +EXIT: + (void)close(fd); + return 0; } +/* * + * @tc.number SUB_KERNEL_FS_WRITE_003 + * @tc.name write + * @tc.desc [C- SOFTWARE -0200] + */ +LITE_TEST_CASE(PosixFsFuncTestSuite, testFsWrite003, Function | MediumTest | Level1) +{ + int fd = 0; + char writeBuf[TEST_BUF_SIZE]; + char readBuf[TEST_BUF_SIZE]; + int ret = 0; + + for (int i = 0; i < TEST_BUF_SIZE; i++) { + writeBuf[i] = '1'; + } + + fd = open(FILE1, O_CREAT | O_RDWR, TEST_MODE_NORMAL); + TEST_ASSERT_TRUE(fd != -1); + + ret = write(fd, writeBuf, TEST_RW_SIZE); + ICUNIT_GOTO_NOT_EQUAL(ret, -1, ret, EXIT); + + (void)lseek(fd, 0, SEEK_CUR); + + ret = read(fd, readBuf, TEST_RW_SIZE); + ICUNIT_GOTO_NOT_EQUAL(ret, -1, ret, EXIT); + + (void)close(fd); + + ret = strncmp(writeBuf, readBuf, TEST_RW_SIZE); + TEST_ASSERT_NOT_EQUAL(0, ret); + return 0; + +EXIT: + (void)close(fd); + return 0; +} + + #if (LOSCFG_LIBC_MUSL == 1) +/* * + * @tc.number SUB_KERNEL_FS_DIRNAME_001 + * @tc.name dirname basic function test + * @tc.desc [C- SOFTWARE -0200] + */ +LITE_TEST_CASE(PosixFsFuncTestSuite, testFsDirname001, Function | MediumTest | Level1) +{ + char path[] = FILE0; + char *workDir = dirname((char *)path); + TEST_ASSERT_NOT_NULL(workDir); + TEST_ASSERT_EQUAL_STRING(".", workDir); + return 0; +} + +/* * + * @tc.number SUB_KERNEL_FS_DIRNAME_002 + * @tc.name dirname basic function test + * @tc.desc [C- SOFTWARE -0200] + */ +LITE_TEST_CASE(PosixFsFuncTestSuite, testFsDirname002, Function | MediumTest | Level1) +{ + char path[] = FILE1; + char *workDir = dirname((char *)path); + TEST_ASSERT_NOT_NULL(workDir); + TEST_ASSERT_EQUAL_STRING(TEST_ROOT, workDir); + return 0; +} + +/* * + * @tc.number SUB_KERNEL_FS_DIRNAME_003 + * @tc.name dirname basic function test + * @tc.desc [C- SOFTWARE -0200] + */ +LITE_TEST_CASE(PosixFsFuncTestSuite, testFsDirname003, Function | MediumTest | Level1) +{ + // get dir + char path[] = DIRA; + char *workDir = dirname((char *)path); + TEST_ASSERT_NOT_NULL(workDir); + TEST_ASSERT_EQUAL_STRING(TEST_ROOT, workDir); + return 0; +} + +/* * + * @tc.number SUB_KERNEL_FS_DIRNAME_004 + * @tc.name dirname basic function test for special input + * @tc.desc [C- SOFTWARE -0200] + */ +LITE_TEST_CASE(PosixFsFuncTestSuite, testFsDirname004, Function | MediumTest | Level1) +{ + // get dir + char *workDir = dirname(""); + TEST_ASSERT_NOT_NULL(workDir); + TEST_ASSERT_EQUAL_STRING(".", workDir); + + workDir = dirname(NULL); + TEST_ASSERT_NOT_NULL(workDir); + TEST_ASSERT_EQUAL_STRING(".", workDir); + + workDir = dirname("/"); + TEST_ASSERT_NOT_NULL(workDir); + TEST_ASSERT_EQUAL_STRING("/", workDir); + + workDir = dirname(".."); + TEST_ASSERT_NOT_NULL(workDir); + TEST_ASSERT_EQUAL_STRING(".", workDir); + + workDir = dirname("."); + TEST_ASSERT_NOT_NULL(workDir); + TEST_ASSERT_EQUAL_STRING(".", workDir); + return 0; +} + /* * * @tc.number SUB_KERNEL_FS_FCNTL_001 * @tc.name fcntl @@ -1596,15 +1975,34 @@ LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFcntl001, Function | MediumTest | Lev int flags = 0; char tmpFileName[]= FILE1; - fd = open(tmpFileName, O_CREAT | O_RDWR, 0777); + fd = open(tmpFileName, O_CREAT | O_RDWR, TEST_MODE_NORMAL); TEST_ASSERT_TRUE(fd != -1); flags = fcntl(fd, F_GETFL); - TEST_ASSERT_TRUE(flags == O_CREAT | O_RDWR); + TEST_ASSERT_TRUE(flags == (O_CREAT | O_RDWR)); - fcntl(fd, F_SETFL, flags | O_APPEND); + (void)close(fd); + + return 0; +} + +/* * + * @tc.number SUB_KERNEL_FS_FCNTL_002 + * @tc.name fcntl + * @tc.desc [C- SOFTWARE -0200] + */ +LITE_TEST_CASE(PosixFsFuncTestSuite, testFsFcntl002, Function | MediumTest | Level1) +{ + int fd = 0; + int flags = 0; + char tmpFileName[]= FILE1; + + fd = open(tmpFileName, O_CREAT | O_RDWR, TEST_MODE_NORMAL); + TEST_ASSERT_TRUE(fd != -1); + + (void)fcntl(fd, F_SETFL, flags | O_APPEND); flags = fcntl(fd, F_GETFL); - TEST_ASSERT_TRUE(flags == O_CREAT | O_RDWR | O_APPEND); + TEST_ASSERT_TRUE(flags == (O_CREAT | O_RDWR | O_APPEND)); (void)close(fd); @@ -1617,31 +2015,6 @@ RUN_TEST_SUITE(PosixFsFuncTestSuite); void PosixFsFuncTest() { LOG("begin PosixFsFuncTest....\r\n"); - - RUN_ONE_TESTCASE(testFsUnlink001); - - RUN_ONE_TESTCASE(testFsStat001); - RUN_ONE_TESTCASE(testFsStat002); - RUN_ONE_TESTCASE(testFsStat003); - - RUN_ONE_TESTCASE(testFsWrite001); - RUN_ONE_TESTCASE(testFsWrite002); -#if (LOSCFG_LIBC_MUSL == 1) - RUN_ONE_TESTCASE(testFsDirname001); - RUN_ONE_TESTCASE(testFsDirname002); - RUN_ONE_TESTCASE(testFsDirname003); - RUN_ONE_TESTCASE(testFsDirname004); - RUN_ONE_TESTCASE(testFsFcntl001); -#endif - RUN_ONE_TESTCASE(testFsReaddir001); - RUN_ONE_TESTCASE(testFsReaddir002); - - RUN_ONE_TESTCASE(testFsRemove001); - RUN_ONE_TESTCASE(testFsRemove002); - - RUN_ONE_TESTCASE(testFsRmdir001); - RUN_ONE_TESTCASE(testFsRmdir002); - RUN_ONE_TESTCASE(testFsFopenFclose001); RUN_ONE_TESTCASE(testFsFopenFclose002); RUN_ONE_TESTCASE(testFsFopenFclose003); @@ -1653,38 +2026,25 @@ void PosixFsFuncTest() RUN_ONE_TESTCASE(testFsFopenFclose009); RUN_ONE_TESTCASE(testFsFopenFclose010); RUN_ONE_TESTCASE(testFsFopenFclose011); - RUN_ONE_TESTCASE(testFsFdopen001); RUN_ONE_TESTCASE(testFsFdopen002); RUN_ONE_TESTCASE(testFsFdopen003); -#if (LOSCFG_LIBC_MUSL == 1) - RUN_ONE_TESTCASE(testFsFdopen004); -#endif RUN_ONE_TESTCASE(testFsFtellFseek001); RUN_ONE_TESTCASE(testFsFtellFseek002); RUN_ONE_TESTCASE(testFsFtellFseek003); RUN_ONE_TESTCASE(testFsFtellFseek004); RUN_ONE_TESTCASE(testFsFtellFseek005); - RUN_ONE_TESTCASE(testFsFtellFseek006); - RUN_ONE_TESTCASE(testFsFtellFseek007); - RUN_ONE_TESTCASE(testFsFtellFseek008); RUN_ONE_TESTCASE(testFsFtellFseek009); -#if (LOSCFG_LIBC_MUSL == 1) - RUN_ONE_TESTCASE(testFsFtellFseek010); -#endif RUN_ONE_TESTCASE(testFsFtellFseek011); RUN_ONE_TESTCASE(testFsFtellFseek012); - RUN_ONE_TESTCASE(testFsFtellFseek013); RUN_ONE_TESTCASE(testFsFtellFseek014); RUN_ONE_TESTCASE(testFsFtellFseek015); RUN_ONE_TESTCASE(testFsFtellFseek016); - RUN_ONE_TESTCASE(testFsFputs001); RUN_ONE_TESTCASE(testFsFputs002); RUN_ONE_TESTCASE(testFsFputs003); RUN_ONE_TESTCASE(testFsFputs004); RUN_ONE_TESTCASE(testFsFputs005); - RUN_ONE_TESTCASE(testFsFreadFwrite001); RUN_ONE_TESTCASE(testFsFreadFwrite002); RUN_ONE_TESTCASE(testFsFreadFwrite003); @@ -1694,5 +2054,55 @@ void PosixFsFuncTest() RUN_ONE_TESTCASE(testFsFreadFwrite007); RUN_ONE_TESTCASE(testFsFreadFwrite008); RUN_ONE_TESTCASE(testFsFreadFwrite009); + RUN_ONE_TESTCASE(testFsOpendir001); + RUN_ONE_TESTCASE(testFsOpendir002); + RUN_ONE_TESTCASE(testFsOpendir003); + RUN_ONE_TESTCASE(testFsReaddir001); + RUN_ONE_TESTCASE(testFsReaddir002); + RUN_ONE_TESTCASE(testFsReaddir003); + RUN_ONE_TESTCASE(testFsRemove001); + RUN_ONE_TESTCASE(testFsRemove002); + RUN_ONE_TESTCASE(testFsRemove003); + RUN_ONE_TESTCASE(testFsRemove004); + RUN_ONE_TESTCASE(testFsRmdir001); + RUN_ONE_TESTCASE(testFsRmdir002); + RUN_ONE_TESTCASE(testFsRmdir003); + RUN_ONE_TESTCASE(testFsRmdir004); + RUN_ONE_TESTCASE(testFsUnlink001); + RUN_ONE_TESTCASE(testFsUnlink002); + RUN_ONE_TESTCASE(testFsRename001); + RUN_ONE_TESTCASE(testFsRename002); + RUN_ONE_TESTCASE(testFsRename003); + RUN_ONE_TESTCASE(testFsStat001); + RUN_ONE_TESTCASE(testFsStat002); + RUN_ONE_TESTCASE(testFsStat003); + RUN_ONE_TESTCASE(testFsOpen001); + RUN_ONE_TESTCASE(testFsOpen002); + RUN_ONE_TESTCASE(testFsOpen003); + RUN_ONE_TESTCASE(testFsOpen004); + RUN_ONE_TESTCASE(testFsOpen005); + RUN_ONE_TESTCASE(testFsClose001); + RUN_ONE_TESTCASE(testFsWrite001); + RUN_ONE_TESTCASE(testFsWrite002); + RUN_ONE_TESTCASE(testFsWrite003); + +#if (LOSCFG_SUPPORT_LITTLEFS == 1) + RUN_ONE_TESTCASE(testFsFtellFseek006); + RUN_ONE_TESTCASE(testFsFtellFseek007); + RUN_ONE_TESTCASE(testFsFtellFseek008); + RUN_ONE_TESTCASE(testFsFtellFseek013); +#endif + +#if (LOSCFG_LIBC_MUSL == 1) + RUN_ONE_TESTCASE(testFsFdopen004); + RUN_ONE_TESTCASE(testFsFtellFseek010); + RUN_ONE_TESTCASE(testFsDirname001); + RUN_ONE_TESTCASE(testFsDirname002); + RUN_ONE_TESTCASE(testFsDirname003); + RUN_ONE_TESTCASE(testFsDirname004); + RUN_ONE_TESTCASE(testFsFcntl001); + RUN_ONE_TESTCASE(testFsFcntl002); +#endif + return; }