The error handling and import/export use cases are in jeopardy of not being completed.
Demo of the existing implementation covering move, delete, rename, and copy/paste.
Questions and Answers:
Q: How are the markers generated/updated when sharing projects/files (see the import/export use case)?
A: Markers are generated/updated when the test resource is first displayed in the Test Navigator.
Q: Can an annotation file be used in place of a marker file?
A: Yes. Considered an improvement from the current design since the metadata in the marker is included in the test resource, thereby increasing portability.
Q: Is deep copy necessary for the copy/paste use case?
A: No. This function can be removed and reused for the rename use case.
Jerome will finish the implementation for the move, delete, rename, and copy/paste use cases this week and post a patch to the Bugzilla for review.
Jerome will resume his non-TPTP responsibilities starting next week for three weeks since he worked 100% on this enhancement for the last three weeks.
Core Use Cases
UC1. Move:
Move a referring or referenced test asset to another directory.
Requires update of references in the referring test asset(s) when moving the referenced test asset.
Requires update of references in the referring test asset when moving the referring test asset.
Currently supports a move via the Refactoring wizard but must support cut/paste and drag/drop.
UC2. Delete:
Delete a referring or referenced test asset.
Requires deleting references in the referring test asset(s) when deleting the referenced test asset.
Requires a deep deletion (confirmed by the user), which deletes all referenced test asset(s) (e.g. deleting all test logs if a test suite is deleted) when deleting the referring test asset.
UC3. Rename:
Renaming a referenced test asset.
Requires update of references in the referring test asset(s) when renaming the referenced test asset.
Physical versus logical renaming:
Need to confirm the benefit (if any) of the logical name for a test asset and determine if it could can be the same as the physical name.
UC4. Copy/paste:
Copy a test asset to the same or another directory.
Requires regeneration of the IDs in the test asset.
Potentially requires renaming the test asset (e.g. copy/paste in the same directory) - see UC3.
Potentially requires moving the test asset (e.g. copy/paste in a different directory) - see UC1.
Physical versus logical renaming:
Need to confirm the benefit (if any) of the logical name for a test asset and determine if it could can be the same as the physical name.
UC5. Error handling:
Fall-back error handling for modifications done outside of the Test Perspective/Test Navigator (e.g. deleting a referenced test asset on the local file system).
Iterates the workspace when the Test Perspective/Test Navigator is opened to correct any inconsistent references/names.
UC6. Import/export:
Export a subset of test assets and then importing the subset of test assets into a new workspace (e.g. missing test asserts).