Skip to content

[libra] 为fetch、lfs和merge命令补充测试用例 #1269

Description

@rick-five

[具体描述]
Libra模块目前有许多命令缺乏完整的测试用例。fetch、lfs和merge命令,要么没有测试用例,要么测试覆盖率不够。本任务旨在为这三个命令添加完整的测试用例,以确保它们的功能正确性和稳定性。
当前存在的问题:
fetch命令:​​无测试模块,无法验证关键函数和边界条件。
lfs命令:无任何测试,无法验证完整流程。
merge命令:​​当前模块存在显著的测试覆盖缺口。
[实现方案]

  1. fetch 命令测试用例​​
    ​​核心功能​​:从远程仓库获取更新到本地,不自动合并到当前分支
    需要测试以下场景:
    获取指定远程仓库的分支​​
    ​​--all 获取所有远程仓库,验证是否同步所有已配置远程仓库
    无参数获取默认远程仓库
    验证网络中断或无效仓库地址时是否返回明确错误
    验证输入不存在分支名时是否报错
    测试实现方式
    在临时目录初始化仓库
    配置多个远程仓库(至少2个)
    设置 origin 为默认远程仓库
    验证各命令是否正确
    2.lfs命令测试用例
    核心功能:优化大文件的存储和传输方式
    需要测试以下场景:
    文件锁定与解锁​
    ​​track/untrack 路径规则管理
    ​​locks 锁定列表查询​
    ​​ls-files 文件状态查看​
    测试实现方式
    在临时目录初始化仓库
    锁定多个文件
    通过不同用户对文件进行操作查看是否正常输出
    3.merge命令测试用例
    核心功能:合并指定分支到当前分支,支持远程分支
    需要测试以下场景:
    ​​本地分支快进合并​
    ​​非快进合并生成合并提交
    合并远程分支​
    ​​合并不存在分支​
    无共同祖先分支合并​
    测试实现方式:
    创建临时仓库
    创建临时分支
    测试各命令能否正常输出

Metadata

Metadata

Assignees

Labels

Type

Projects

No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions