View Full Version : Build rossa
Occhio raga, la build e`rotta da questa mattina :P
AnonimoVeneziano
27-01-2008, 16:06
:eek: :doh:
Taglia u'dito taglia u'dito taglia u'dito
Chi è stato? :ciapet:
Non ha molta importanza chi, basta fixare la build... Io posso darci un'occhiata tra un paio d'ore altrimenti se qualcuno puo` farlo ora tanto meglio
AnonimoVeneziano
27-01-2008, 16:08
ci provo io ...
sto scaricando la build rotta adesso
Ciao
e` verde con il test runner integrato in eclipse ma rossa su ANT... strano
Scusate ma java non lo conosco cosi` bene come pensavo...
abstractDroppable = new AbstractSingleDroppable(
MockEngine.create(0, 0), AbstractDroppableType.GEM, DroppableColor.DIAMOND,
0)
{
};
Cosa fa sta riga di codice? Sembra che le {}; permettano di chiamare il costruttore anche se protetto :o
Mi chiedo se ha senso testare quella classe che essendo abstract nel codice non può essere istanziata. Oltretutto i test sono tutti assertEquals piuttosto banali e non è che dicano tanto sul funzionamento della stessa. Così a naso direi che i test sono stati scritti di fretta dopo che la classe.
AnonimoVeneziano
27-01-2008, 16:46
E' una classe anonima
E' il centro del problema.
Non si possono fare classi anonime in JUnit.
Difatti avevo risolto il problema mettendo dei mock anzichè istanziare la classe lì ....
Ma sono stati fatti pesanti modifiche nell'ultimo update che mi hanno costretto a buttare tutto il lavoro fatto perchè è cambiato troppo. Adesso sto rifacendo il checkout ...
Comunque non basta fare lanciare Junit per accorgersi del problema. Bisogna lanciare Ant Build!!
Ciao
AnonimoVeneziano
27-01-2008, 16:59
Committato.
Mo dovrebbe essere blu.
Comunque dovremmo decidere se eliminare i test incriminati
confesso di essere stato io... :|
il fatto è che quell'helper era utilizzato una volta sola in tutto il codice, e quindi leggendo anche il TODO che stava scritto subito sotto (per un problema identico) mi son chiesto come mai isolarlo in un altra classe ^^'
poi io siccome il checkstyle ce l'ho nel sangue non uso mai Ant per avviare JUnit :asd:
grazie Anonimo :)
ps: oggi si è scoperto che ad Ant non piacciono le classi anonime... domani che altro? :mbe:
AnonimoVeneziano
27-01-2008, 17:21
confesso di essere stato io... :|
il fatto è che quell'helper era utilizzato una volta sola in tutto il codice, e quindi leggendo anche il TODO che stava scritto subito sotto (per un problema identico) mi son chiesto come mai isolarlo in un altra classe ^^'
poi io siccome il checkstyle ce l'ho nel sangue non uso mai Ant per avviare JUnit :asd:
grazie Anonimo :)
ps: oggi si è scoperto che ad Ant non piacciono le classi anonime... domani che altro? :mbe:
prego :D
Sinceramente non lo sapevo neanch'io ,fino ad oggi, che le classi anonime facessero a botte con JUnit. A quanto sembra infatti è un errore generato da JUnit che però non si ripercuote sui tests lanciati attraverso il "Run As".
Forse Ant Build lancia i tests con parametri diversi o modalità differenti? O magari non ignora warning che col "run as" vengono ignorati. Boh.
Fatto stà che adesso sappiamo che non dobbiamo usare le classi anonime nei test di JUnit :D
Ciao
comunque ogni tanto date un'occhio al build server, potete registrarvi al RSS e tenervi la barretta in alto su mozilla
comunque ogni tanto date un'occhio al build server, potete registrarvi al RSS e tenervi la barretta in alto su mozilla me ne ridai l'indirizzo che non me lo sono segnato?
AnonimoVeneziano
27-01-2008, 17:38
http://fcarucci.homeip.net:8080/cruisecontrol/buildresults/diamonds
Comunque lanciando Ant Build prima di ogni commit si sta al sicuro
Ciao
http://fcarucci.homeip.net:8080/cruisecontrol/buildresults/diamonds ari-grazie :)
confesso di essere stato io... :|
*crack*
poi io siccome il checkstyle ce l'ho nel sangue non uso mai Ant per avviare JUnit :asd:
D'ora in poi lancia Ant prima di ogni commit per favore :)
*crack* *AHI* :cry:
D'ora in poi lancia Ant prima di ogni commit per favore :) si, ci sto facendo l'automatismo infatti :mc:
ehm
la inner class anonima l'avevo fatta io, e finchè rimaneva nell'helper funzionava anche il task ant.
Ora riporvo a farla, poi ditemi se preferite la classe reale o anonima creata dall'helper
confermo
se l'inner class è dichiarata nella classe helper non ci sono problemi
Evidentemente, il fatto che junit reinstanzi la classe di test per ogni test effettuato crea qualche problema alle inner class, mentre se sono presenti in un altra classe non dà problemi
AnonimoVeneziano
29-01-2008, 13:15
confermo
se l'inner class è dichiarata nella classe helper non ci sono problemi
Evidentemente, il fatto che junit reinstanzi la classe di test per ogni test effettuato crea qualche problema alle inner class, mentre se sono presenti in un altra classe non dà problemi
Io invece credo sia perchè in JUnit le classi definite all'interno della classe "TestCase" sono in qualche modo dipendenti dalla classe TestCase stessa e richiedono un costruttore di tipo TestCase(). Difatti l'errore era proprio quello : Ant si lamentava del fatto che alla classe anonima mancasse un costruttore "public TestCase()".
Ciao
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.