ASSERT-KTH / ASSERT-KTH/pankti
generate a submodule to run pankti-generated test cases
- Dominant language
- Java
- Stars
- 18
- Forks
- 6
- PR merge metrics
- No merged PRs in 30d
Description
We may generate a submodule that contains all the pankti-generated test cases. The benefits of doing so include:
- A good separation between original test cases and pankti-generated
- Only `Test*PanktiGen.java` and `object-data.xml` need to be copied to the submodule, because this module depends on all the original submodules
- No need to modify original pom files, because only this module needs `xstream` as a dependency
This is an example that I manually did for TTorrent: https://github.com/gluckzhang/ttorrent/tree/ttorrent-2.0-pankti
What I did in this example:
- `mkdir pankti-tests` and add `pankti-tests` in the root `pom.xml`
- create a pom file for submodule `pankti-tests`, add all of the original submodules as its dependencies, add `xstream` as its dependency as well: https://github.com/gluckzhang/ttorrent/blob/ttorrent-2.0-pankti/pankti-tests/pom.xml
- put the pankti-generated test files in `src/test/java`, put the object data xml files in `src/test/resources`
```bash
cd path/to/pankti/pankti-generate/output/generated/ttorrent
find . -type f -name "Test*PanktiGen.java" -exec cp --parents {} path/to/ttorrent/pankti-tests/src/test/java \;
cp *.xml path/to/ttorrent/pankti-tests/src/test/resources
```
*This is for the convenience of our experiments. At last we might still put the generated test cases in the original submodules to create a PR.*
Contributor guide
No contributing guide indexed for this repository
Research direction
Use the TTorrent pankti-tests example as the reference, then inspect the repository root pom.xml and the existing module layout. Define a pankti-tests submodule with its own pom.xml, original submodules and xstream as dependencies, and place Test*PanktiGen.java files under src/test/java with object-data.xml under src/test/resources. Done means the generated tests can run from the new module without modifying the original module poms.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- build-system, testing
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100