Skip to content
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Commit ac5af18

Browse files
committedMar 8, 2025·
!squash more test-coverage notes
1 parent c2029bc commit ac5af18

File tree

1 file changed

+13
-0
lines changed

1 file changed

+13
-0
lines changed
 

‎notes/test-coverage.md

+13
Original file line numberDiff line numberDiff line change
@@ -106,6 +106,15 @@ This document provides a comprehensive checklist of test coverage for the VCSPul
106106
- [ ] **Status Checking:** Checking repository status
107107
- [x] **Success and Error Handling:** Managing operation outcomes *(tests/test_cli.py: test_sync_broken)*
108108

109+
#### Testing Strategy:
110+
- [x] **Use libvcs pytest fixtures:** Efficient setup/teardown of VCS repositories:
111+
- Use `create_git_remote_repo` to create Git repositories on demand
112+
- Use `create_svn_remote_repo` to create SVN repositories on demand
113+
- Use `create_hg_remote_repo` to create Mercurial repositories on demand
114+
- Use pre-configured `git_repo`, `svn_repo`, and `hg_repo` fixtures for common test scenarios
115+
- Fixtures handle proper environment configuration automatically
116+
- See `.cursor/rules/vcspull-pytest.mdc` for detailed usage examples
117+
109118
#### Uncommon Cases:
110119
- [ ] **Repository Authentication:** Cloning/updating repos requiring auth
111120
- [x] **Custom Remote Configurations:** Non-standard remote setups *(tests/test_sync.py: UPDATING_REMOTE_FIXTURES with has_extra_remotes=True)*
@@ -201,6 +210,10 @@ As part of the transition to Pydantic models, these specific areas need thorough
201210
- [ ] **File System Fixtures:** Mock file systems with different characteristics
202211
- [ ] **Network Fixtures:** Mock network responses for repository operations
203212
- [ ] **VCS Command Fixtures:** Mock VCS command execution
213+
- [x] **libvcs pytest Fixtures:** Leveraging libvcs's pytest plugin fixtures for efficient VCS setup/teardown:
214+
- [x] **Repository Creation Factories:** `create_git_remote_repo`, `create_svn_remote_repo`, `create_hg_remote_repo`
215+
- [x] **Pre-configured Repos:** `git_repo`, `svn_repo`, `hg_repo` providing ready-to-use repository instances
216+
- [x] **Environment Setup:** `set_home`, `gitconfig`, `hgconfig`, `git_commit_envvars` for proper testing environment
204217

205218
### Mocking:
206219
- [x] **File System Mocking:** Simulating file system operations *(tests/helpers.py: EnvironmentVarGuard, tmp_path fixtures)*

0 commit comments

Comments
 (0)
Please sign in to comment.