Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

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: 2 days ago
JSON representation

A suite of libraries that simplify creating and unit testing annotation processors.

Awesome Lists containing this project

README

        

# Elementary - Simplify creating and testing annotation processors.

[![Elementary](https://github.com/Pante/elementary/actions/workflows/build.yaml/badge.svg)](https://github.com/Pante/elementary/actions/workflows/build.yaml)
[![Discord](https://img.shields.io/discord/140273735772012544.svg?style=flat-square)](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

[![releases-maven](https://img.shields.io/maven-central/v/com.karuslabs/elementary)](https://central.sonatype.com/artifact/com.karuslabs/elementary/)
[![javadoc](https://img.shields.io/badge/javadoc-stable-brightgreen.svg)](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.

[![releases-maven](https://img.shields.io/maven-central/v/com.karuslabs/utilitary)](https://central.sonatype.com/artifact/com.karuslabs/utilitary/)
[![javadoc](https://img.shields.io/badge/javadoc-stable-brightgreen.svg)](https://www.javadoc.io/doc/com.karuslabs/utilitary)

This project is mature. It requires Java 11.

```XML

com.karuslabs
utilitary
3.0.0

```