<div dir="ltr"><div>Ciao a tutti.</div><div><br></div><div>Sto risolvendo alcuni degli esercizi proposti su exercism, ma nonostante in apparenza i risultati siano corretti, la sessione di test proposta mi restituisce comunque un assertion error su molti dei test condotti (17 su 38).</div><div>L''esercisio è rational-numbers e sia la soluzione che la sesisone di test è pubblicata al link: <a href="https://exercism.io/tracks/python/exercises/rational-numbers/solutions/3b67ca1690e246e8bcbbee407703c2a5">https://exercism.io/tracks/python/exercises/rational-numbers/solutions/3b67ca1690e246e8bcbbee407703c2a5</a> </div><div><br></div><div>Se testo i due risultati con un "==" il risultato è True... ma probabilmente c'è qualche cosa che mi sfugge...</div><div><br></div><div>Gli errori sembrano concentrati nelle funzioni e test che prevedono un cambio del segno, forse nel metodo __repr__</div><div><br></div><div>Il risultato dalla shell è questo:</div><div><br></div><div> >>>...</div><div>.F.F..F..F.F.FF.FFF.........FFFFFF.F..<br>======================================================================<br>FAIL: test_absolute_value_of_a_negative_rational_number_with_negative_denominator (__main__.RationalNumbersTest)<br>----------------------------------------------------------------------<br>Traceback (most recent call last):<br> File "C:/Users/simon/Exercism/python/rational-numbers/rational_numbers_test.py", line 91, in test_absolute_value_of_a_negative_rational_number_with_negative_denominator<br> self.assertEqual(abs(Rational(1, -2)), Rational(1, 2))<br>AssertionError: 1/2 != 1/2<br></div><div>[...]</div><div><br></div><div><br></div>Cosa sto trascurando ?<div><br></div><div>Grazie a tutti!<br clear="all"><div><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div style="font-size:12.8px"><br></div><div style="font-size:12.8px"><div style="color:rgb(0,0,0);font-family:Helvetica,sans-serif;margin-left:45px;font-size:11px;margin-top:30px"></div></div></div></div></div></div></div></div></div></div></div></div>
<br>
<hr><i style="color:rgb(34,34,34);font-size:12.8px;background-color:rgb(255,255,255)"><font size="1">Ai sensi del Regolamento Europeo 679/2016 si precisa che le informazioni trasmesse sono intese soltanto per la persona o l'ente cui sono indirizzate e possono avere contenuto confidenziale e/o riservato. La visione, la trasmissione, la diffusione o altro uso delle informazioni di cui sopra è proibita a chiunque ad esclusione del legittimo destinatario Se avete ricevuto queste informazioni per errore, siete pregati di contattare il mittente e cancellare il materiale ricevuto.</font></i>