assertj / assertj/assertj-generator

Running assertj generator on JDK 11

Offen
#128 3 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
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

Beitragsleitfaden öffnen

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

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.