assertj / assertj/assertj-generator
Running assertj generator on JDK 11
- Vorherrschende Sprache
- Java
- Sterne
- 72
- Forks
- 47
- Ø Merge
- 1 T. 16 Std.
- Gemergte PRs (30 T.)
- 2
Beschreibung
I am trying to build a library with OpenJDK 11 with the maven-assertj-generator plugin enabled. However, the plugin succeeds, but generates non-compiling code.
Has anyone had any succes on running the assertj-generator with OpenJDK 11?
Generated code:
```
/**
* Verifies that the actual Melding's referenties contains the given interface Referentie elements.
* @param referenties the given elements that should be contained in actual Melding's referenties.
* @return this assertion object.
* @throws AssertionError if the actual Melding's referenties does not contain all given interface Referentie elements.
*/
public MeldingAssert hasReferenties(interface Referentie... referenties) {
// check that actual Melding we want to make assertions on is not null.
isNotNull();
// check that given interface Referentie varargs is not null.
if (referenties == null) failWithMessage("Expecting referenties parameter not to be null.");
// check with standard error message, to set another message call: info.overridingErrorMessage("my error message");
Iterables.instance().assertContains(info, actual.getReferenties(), referenties);
// return the current assertion for method chaining
return this;
}
```
Wrong line:
`public MeldingAssert hasReferenties(interface Referentie... referenties) {`
Expected line:
`public MeldingAssert hasReferenties(Referentie... referenties) {`
To solve the issue, I tried building the assertj-assertions-generator on OpenJDK 11, but I also ran into all kinds of trouble.
* Tried to build a latest version of com.google.testing.compile:compile-testing
* Tried to upgrade Guava
* Needed to upgrade to JDK 8 source code
* Ran into troubles running JUnit Theories
Beitragsleitfaden
Rechercherichtung
Beginne damit, den maven-assertj-generator-Lauf auf OpenJDK 11 zu reproduzieren, wobei die generierte Methode MeldingAssert.hasReferenties als fehlschlagender Einstiegspunkt verwendet wird. Prüfe anschließend die im Bericht erwähnten Build-Einschränkungen für den Generator, compile-testing und Guava und führe dann die relevanten JUnit Theories aus. Als erledigt gilt die Aufgabe, wenn die generierte Methode ohne das ungültige interface-Token kompiliert.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- java
- Bereich
- build-system, tooling
- Issue-Typ
- Bug
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 35/100