Projet

Général

Profil

Bug #57725

crash jenkins

Ajouté par Thomas Noël il y a plus de 2 ans. Mis à jour il y a plus de 2 ans.

Statut:
Fermé
Priorité:
Normal
Assigné à:
-
Version cible:
-
Début:
11 octobre 2021
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Oui
Planning:
Non

Description

Sur py3-dj22-coverage (a priori par sur dj111) :

=================================== FAILURES ===================================
______________________________ test_person_search ______________________________

db = None
rsu = [<Entity: 1>, <Entity: 2>, <Entity: 3>, <Entity: 4>, <Entity: 5>, <Entity: 6>, ...]

    def test_person_search(db, rsu):
        search = PersonSearch()

        found = list(search.search_name(rsu[0].content['prenoms'] + ' ' + rsu[0].content['nom_de_naissance']))
        assert rsu[0].id == found[0].id
        assert found[0].similarity == 1.0

        found = list(search.search_query(rsu[0].content['prenoms'] + ' ' + rsu[0].content['nom_de_naissance']))
        assert rsu[0].id == found[0].id
        assert found[0].similarity == 1.0

        birthdate = datetime.datetime.strptime(rsu[0].content['date_de_naissance'], '%Y-%m-%d').date()
        found = list(search.search_birthdate(birthdate))

        assert any(x for x in found if x.id == rsu[0].id)
        assert len(found) == 1

        found = list(search.search_email(rsu[0].content['email']))
        assert found[0].id == rsu[0].id
>       assert len(found) == 1
E       assert 2 == 1
E        +  where 2 = len([<Entity: 1>, <Entity: 381>])

tests/test_nanterre.py:42: AssertionError
---------------------------- Captured stdout setup -----------------------------
Installed 5 object(s) from 1 fixture(s)

Fichiers

Révisions associées

Révision 99999407 (diff)
Ajouté par Thomas Noël il y a plus de 2 ans

tests: do not crash on non-deterministic tests (#57725)

Historique

#1

Mis à jour par Benjamin Dauvergne il y a plus de 2 ans

Oui le test est non déterministe ça arrive un peu tout le temps, je génères des identités au hasard et des fois la recherche me donne des doublons, on peut changer l'assertion en < 2 si c'est dérangeant ou chercher à empêcher les doublons dans la fixture rsu.

#2

Mis à jour par Thomas Noël il y a plus de 2 ans

  • Statut changé de Nouveau à En cours

C'est juste que j'avais jamais vu ce truc et que je pense l'avoir vu 2 fois ces derniers jours.

Je laisse ainsi pour quelques jours.

Si ça revient on pourra remplacer par un assert 0 < len(found) < 10 ... voire retirer cet assert, parce que la ligne du dessus (found[0].id == rsu[0].id) est ce qui nous intéresse vraiment.

#3

Mis à jour par Benjamin Dauvergne il y a plus de 2 ans

Thomas Noël a écrit :

C'est juste que j'avais jamais vu ce truc et que je pense l'avoir vu 2 fois ces derniers jours.

C'est un signe, joue au loto ! :)

Je suis ok avec le fix.

#4

Mis à jour par Thomas Noël il y a plus de 2 ans

je pense que ça doit être ça...

#5

Mis à jour par Thomas Noël il y a plus de 2 ans

Encore un crash du test cette nuit. T'en es où pour le Loto ? On partage les gains ?

#6

Mis à jour par Benjamin Dauvergne il y a plus de 2 ans

  • Statut changé de Solution proposée à Solution validée

Goldorak go.

#7

Mis à jour par Thomas Noël il y a plus de 2 ans

  • Statut changé de Solution validée à Résolu (à déployer)
commit 99999407578cb6ee5febbae04232aa4d9c7404ed
Author: Thomas NOEL <tnoel@entrouvert.com>
Date:   Mon Oct 11 13:38:37 2021 +0000

    tests: do not crash on non-deterministic tests (#57725)

#8

Mis à jour par Transition automatique il y a plus d'un an

Automatic expiration

Formats disponibles : Atom PDF