https://github.com/pante/elementary
A suite of libraries that simplify creating and unit testing annotation processors.
https://github.com/pante/elementary
annotation-processor annotation-processors annotation-tool hacktoberfest java java-11 java-17 java-compiler junit-extension junit5 junit5-extension testing
Last synced: about 1 month ago
JSON representation
A suite of libraries that simplify creating and unit testing annotation processors.
- Host: GitHub
- URL: https://github.com/pante/elementary
- Owner: Pante
- License: mit
- Created: 2021-01-11T02:54:04.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2024-10-22T09:02:59.000Z (7 months ago)
- Last Synced: 2024-10-23T04:40:27.846Z (7 months ago)
- Topics: annotation-processor, annotation-processors, annotation-tool, hacktoberfest, java, java-11, java-17, java-compiler, junit-extension, junit5, junit5-extension, testing
- Language: Java
- Homepage:
- Size: 1.21 MB
- Stars: 41
- Watchers: 4
- Forks: 6
- Open Issues: 11
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Funding: .github/FUNDING.yml
- License: LICENSE.md
Awesome Lists containing this project
README
# Elementary - Simplify creating and testing annotation processors.
[](https://github.com/Pante/elementary/actions/workflows/build.yaml)
[](https://discord.gg/uE4C9NQ)To get started, check out
the [docs](./docs) & [Gradle example](https://github.com/toolforger/elementary-demo).## Elementary - JUnit extensions to test compilation & annotation processors
[](https://central.sonatype.com/artifact/com.karuslabs/elementary/)
[](https://www.javadoc.io/doc/com.karuslabs/elementary)This project is mature. It requires Java 11.
Used by OSS projects such as Quarkus, Jenkins & Redis Spring OM.
### Features
* Allow blackbox & whitebox testing of annotation processing.
* First class integration with JUnit 5, including parameterized tests.
* Same-file declaration of tests & test cases.
* Support for Java 9 modules.```XML
org.junit.jupiter
junit-jupiter-api
5.9.3
test
org.junit.jupiter
junit-jupiter-params
5.9.3
test
com.karuslabs
elementary
3.0.0
test
```
```xml
maven-resources-plugin
3.2.0
copy-resources
process-test-classes
copy-resources
${basedir}/target/test-classes/
${basedir}/src/test/java/
**/*.*
```
## Utilitary - Utilities for annotation processors.
[](https://central.sonatype.com/artifact/com.karuslabs/utilitary/)
[](https://www.javadoc.io/doc/com.karuslabs/utilitary)This project is mature. It requires Java 11.
```XML
com.karuslabs
utilitary
3.0.0```