318 Star 2.1K Fork 1K

OpenHarmony / kernel_liteos_a

 / 详情

【OpenHarmony】【2.3_Beta】【轻内核子系统】集成测试pread函数返回值与之前版本不一致

已完成
任务 成员
创建于  
2021-07-26 17:04

【OpenHarmony】【2.3_Beta】【轻内核子系统】集成测试pread函数返回值与之前版本不一致
【测试版本】
hispark_taurus版本:
http://download.ci.openharmony.cn/version/Master_Version/OpenHarmony_2.3_Beta/20210721_011042/version-Master_Version-OpenHarmony_2.3_Beta-20210721_011042-hispark_taurus.tar.gz
【测试步骤】
1.Hi3516dv300板子烧写2.3_Beta版本,正常启动挂载成功
2.执行命令./HitsIoPosixTest.bin
【测试用例】
1./* *

  • @tc.number SUB_KERNEL_IO_OTHER_1080

  • @tc.name pread basic function test The input data is empty

  • @tc.desc [C- SOFTWARE -0200]
    */
    HWTEST_F(IoTestExt, testPreadExt0200, Function | MediumTest | Level2)
    {
    int fd = 0;
    char buf[MAX_BUFFER_SIZE] = {0};
    int count = 128;
    int offset = 1;
    FILE *fp = nullptr;
    FOPEN_WRITE(fp);
    fputs("", fp);
    EXPECT_NE(fclose(fp), -1) << "> fclose fail, errno = " << errno;
    fp = nullptr;

    FOPEN_READ(fp);
    FILENO(fp);
    int ret = pread(fd, buf, count, offset);
    EXPECT_EQ(ret, 0);
    EXPECT_STREQ(buf, "");
    EXPECT_NE(fclose(fp), -1) << "> fclose fail, errno = " << errno;
    }
    2./* *

  • @tc.number SUB_KERNEL_IO_OTHER_1120

  • @tc.name pread basic function test The offset is greater than the number of bytes file

  • @tc.desc [C- SOFTWARE -0200]
    */
    HWTEST_F(IoTestExt, testPreadExt0500, Function | MediumTest | Level2)
    {
    int fd = 0;
    char buf[MAX_BUFFER_SIZE] = {0};
    int count = 128;
    int offset = 12;
    FILE *fp = nullptr;
    FOPEN_WRITE(fp);
    fputs("123456789", fp);
    EXPECT_NE(fclose(fp), -1) << "> fclose fail, errno = " << errno;
    fp = nullptr;

    FOPEN_READ(fp);
    FILENO(fp);
    int ret = pread(fd, buf, count, offset);
    EXPECT_EQ(ret, 0);
    EXPECT_STREQ(buf, "");
    EXPECT_NE(fclose(fp), -1) << "> fclose fail, errno = " << errno;
    }
    【测试log】
    [ RUN ] IoTestExt.testPreadExt0200

../../../test/xts/huawei_proprietary/hits/kernel_lite/io_posix/src/IoTestOtherExt1.cpp:63: Failure

Expected equality of these values:

ret

Which is: -1

0

[ FAILED ] IoTestExt.testPreadExt0200 (12 ms)

[ RUN ] IoTestExt.testPreadExt0500

../../../test/xts/huawei_proprietary/hits/kernel_lite/io_posix/src/IoTestOtherExt1.cpp:138: Failure

Expected equality of these values:

ret

Which is: -1

0

[ FAILED ] IoTestExt.testPreadExt0500 (7 ms)

评论 (2)

是蕊蕊呀 创建了任务
是蕊蕊呀 负责人设置为LeonChan
是蕊蕊呀 负责人LeonChan 修改为未设置
是蕊蕊呀 负责人设置为LeonChan
是蕊蕊呀 添加了
 
Integration_Test
标签
LeonChan 添加协作者LeonChan
LeonChan 负责人LeonChan 修改为Far
Far 任务状态待办的 修改为进行中
展开全部操作日志

lseek和pread在将文件指针修改至超过文件大小时,在FATFS中会改变文件大小,在只读打开文件时时应当返回错误。此bug在2.3 beta版本中修复,建议用例增加写权限。

修改测试用例后测试通过
[ RUN ] IoTestExt.testPreadExt0200

[ OK ] IoTestExt.testPreadExt0200 (2 ms)

[ RUN ] IoTestExt.testPreadExt0500

[ OK ] IoTestExt.testPreadExt0500 (5 ms)

Far 任务状态进行中 修改为已完成

登录 后才可以发表评论

状态
负责人
项目
里程碑
Pull Requests
关联的 Pull Requests 被合并后可能会关闭此 issue
分支
开始日期   -   截止日期
-
置顶选项
优先级
预计工期 (小时)
参与者(3)
9134831 shadowlover r 1644909331
C
1
https://gitee.com/openharmony/kernel_liteos_a.git
git@gitee.com:openharmony/kernel_liteos_a.git
openharmony
kernel_liteos_a
kernel_liteos_a

搜索帮助