1
0

test: add comprehensive pytest test suite

Add complete test infrastructure for yaml2pptx project with 245+ tests
covering unit, integration, and end-to-end scenarios.

Test structure:
- Unit tests: elements, template system, validators, loaders, utils
- Integration tests: presentation and rendering flows
- E2E tests: CLI commands (convert, check, preview)

Key features:
- PptxFileValidator for Level 2 PPTX validation (file structure,
  element count, content matching, position tolerance)
- Comprehensive fixtures for test data consistency
- Mock-based testing for external dependencies
- Test images generated with PIL/Pillow
- Boundary case coverage for edge scenarios

Dependencies added:
- pytest, pytest-cov, pytest-mock
- pillow (for test image generation)

Documentation updated:
- README.md: test running instructions
- README_DEV.md: test development guide

Co-authored-by: OpenSpec change: add-comprehensive-tests
This commit is contained in:
2026-03-02 23:11:34 +08:00
parent 027a832c9a
commit ab2510a400
56 changed files with 7035 additions and 6 deletions

View File

@@ -4,7 +4,7 @@ context: |
本项目始终面向中文开发者,使用中文进行注释、交流等内容的处理,不考虑多语言;
本项目编写的python脚本和任何python命令都始终使用uv运行需要执行临时命令使用uv run python -c "xxx"执行命令;
严禁直接使用主机环境的python直接执行脚本或命令严禁在主机环境直接安装python依赖包
本项目编写的测试文件、临时文件必须放在temp目录下
本项目编写的非正式测试文件、临时文件必须放在temp目录下
严禁污染主机环境的任何配置,如有需要,必须请求用户审核操作;
当前项目的面向用户的使用文档在README.md当前项目的面向AI和开发者的开发规范文档在README_DEV.md每次功能迭代都需要同步更新这两份说明文档
所有的文档、日志、说明严禁使用emoji或其他特殊字符保证字符显示的兼容性