-
Notifications
You must be signed in to change notification settings - Fork 1
Open
Description
Build a test scaffolding CLI tool, along with related analyzers and code fixes, which use Iceberg's dependency mapping functionality for the following:
- Scaffolding integration tests for a specified entry point:
- Map all upstream dependencies to their furthest extents
- Use the provided settings and/or filtering logic for determining which dependencies should be mocked and which should use concrete implementations
- Scaffold mocking code for these mocked dependencies
- Setup the class containing the entry point for testing, handling dependency resolution and passing both mocks and concrete instances via constructor injection
- Simplify maintenance of scaffolded integration tests:
- Analyzers:
- ICE001: Missing mock for {dependency}
- Report diagnostics for dependencies which are not mocked, but require them based on the associated settings/or filtering logic for the test
- ICE002: Unused mock
- Report diagnostics for mocks which are no longer required after changes are made to the entry point and/or it's dependencies
- ICE001: Missing mock for {dependency}
- Code Fixes:
- Add mock setup statements based on ICE001
- Remove unused mock setup statements based on ICE002
- Analyzers:
Metadata
Metadata
Assignees
Labels
No labels