Problem
Unit tests, integration tests, and tooling/lint tests are currently mixed under Tests/ root. This reduces clarity and makes it harder to scale test organization.
Proposed Solution
- Create folder structure:
- Tests/Unit/ for pure function unit tests
- Tests/Integration/ for COM + workbook integration tests
- Tests/Tooling/ for lint/policy/test-framework tests (Lint.Tests.ps1, etc.)
- Move files:
- Tests/Unit/:
- ConvertFrom-ReceiptFileName.Tests.ps1
- ConvertTo-ExcelRangeName.Tests.ps1
- Get-AccountsLast4.Tests.ps1
- Get-Categories.Tests.ps1
- Get-ExcelColumnLetter.Tests.ps1
- Get-Methods.Tests.ps1
- Get-ReceiptFlag.Tests.ps1
- Read-PreservedCategoryValues.Tests.ps1
- Set-SubcategoryValidationXml.Tests.ps1
- Test-SubcategoryValid.Tests.ps1
- Write-SyncLog.Tests.ps1
- Tests/Integration/ currently has existing integration tests and fixtures (no change).
- Tests/Tooling/:
- Lint.Tests.ps1
- (optional future tooling tests)
- Update CI workflows and docs to use Tests/Unit//*.Tests.ps1 and Tests/Tooling//*.Tests.ps1 where applicable.
Acceptance Criteria
Problem
Unit tests, integration tests, and tooling/lint tests are currently mixed under Tests/ root. This reduces clarity and makes it harder to scale test organization.
Proposed Solution
Acceptance Criteria