Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

RecursiveComparisonConfiguration is not taken into account for map keys

Aperta
#3,835 2 commenti 1 reazione 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
3/5
Tempo stimato
1-2 giorni
Idoneità per principianti
38/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Ferma
Stack tecnologico
java
Ambito
testing

Direzione di ricerca

Inizia con i due casi che riproducono il problema, should_pass_when_keys_are_equal e should_honor_ignored_fields_in_keys, in RecursiveComparisonAssert_for_maps_Test. Esegui i test di AssertJ core per confermare il fallimento e verifica come il confronto ricorsivo gestisce le chiavi delle mappe. Il lavoro è completato quando entrambi i casi passano e il confronto ricorsivo configurato viene rispettato per le chiavi.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

Hello,
When comparing two maps, the recursive comparison doesn't seem to be taken into account for keys.

  • assertj core version: 4.0.0-M1 (and earlier)
  • java version: 21

I added two test cases in RecursiveComparisonAssert_for_maps_Test to reproduce the issue (should_pass_when_keys_are_equal and should_honor_ignored_fields_in_keys). Here is the first one :

  @Test
  void should_pass_when_keys_are_equal() {
    // GIVEN
    Person sheldon = new Person("Sheldon");
    Person leonard = new Person("Leonard");
    Person raj = new Person("Rajesh");

    PersonDto sheldonDto = new PersonDto("Sheldon");
    PersonDto leonardDto = new PersonDto("Leonard");
    PersonDto rajDto = new PersonDto("Rajesh");

    Map<Person, String> actual = mapOf(entry(sheldon, sheldon.name),
                                       entry(leonard, leonard.name),
                                       entry(raj, raj.name));
    Map<PersonDto, String> expected = mapOf(entry(sheldonDto, sheldonDto.name),
                                            entry(leonardDto, leonardDto.name),
                                            entry(rajDto, rajDto.name));
    // WHEN/THEN
    then(actual).usingRecursiveComparison(recursiveComparisonConfiguration)
                .isEqualTo(expected);
 }

Could this issue be linked to #2165 ?

Lingua principale
Java
Stelle
2.8k
Fork
786
Merge medio
23h 45m
PR unite (30g)
32

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di assertj/assertj

Tutte le issue di assertj/assertj

Issue simili

Altre issue su Java

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.