PDA

View Full Version : TODO Official Thread


Bonfo
30-01-2008, 17:16
Ne abbiamo troppi, e quasi tutti in italiano! :asd: :asd:
Propongo di ammazzarli uno alla volta, altrimenti rimango lì in eterno.

Come procedere:
1) capire cosa cavolo chiede il TODO;
2) capire se la richiesta ha ancora senso ( potrebbe essere lì dal medioevo);
3) eseguire il TODO.

Propongo il primo:
cercare di correggere questo test (TestGameLoop.java - line 240)

Il test che controlla il disegno del GameOver c'è già (testGameOverMessageIsDrawn in TestPlayField).
Cnacello? :rolleyes:

71104
30-01-2008, 17:19
Cancello? :rolleyes: LOL! :rotfl:
no dai, siamo seri :D prima cerchiamo di capire il problema...

Bonfo
30-01-2008, 17:20
LOL! :rotfl:
no dai, siamo seri :D prima cerchiamo di capire il problema...
Certo... se no perchè avrei aperto il Thread :sofico:

71104
30-01-2008, 17:22
*aehm*... l'ho decommentato per vedere se falliva e noto che quel test è talmente vecchio che neanche compila più... :asd:

si, in effetti ripensandoci sarebbe meglio evitare troppi sbattimenti e cancellarlo a piè pari; se poi si presenta un bug lo ritesteremo... :rolleyes:

fek
30-01-2008, 17:24
*aehm*... l'ho decommentato per vedere se falliva e noto che quel test è talmente vecchio che neanche compila più... :asd:

si, in effetti ripensandoci sarebbe meglio evitare troppi sbattimenti e cancellarlo a piè pari; se poi si presenta un bug lo ritesteremo... :rolleyes:

Ma no, facciamo che riscrivi un test per quel metodo.

71104
30-01-2008, 17:26
Ma no, facciamo che riscrivi un test per quel metodo. *quale* metodo? :D
ne vengono chiamati almeno 6 o 7 là dentro, ciascuno testato separatamente :D

conta che l'ho decommentato e l'ho fatto compilare con qualche modifica, ecco la nuova versione:

// TODO: cercare di correggere questo test
public void testGameOversAreDisplayingCorrectly()
{
MockEngine engine = (MockEngine)environment.getEngine();
LayerManager layerManager = gameLoop.getLayerManager();
gameLoop.doOneStep();
engine.clearDisplay();
layerManager.drawLayers(engine);
int numberOfQuadsDrawn = engine.getNumberOfQuadsDrawn();
gameLoop.getPlayFieldOne().getGridController().getGemsPair().getPivot().getFallingObject().drop();
gameLoop.getPlayFieldOne().getGridController().getGemsPair().getSlave().getFallingObject().drop();
gameLoop.getPlayFieldTwo().getGridController().getGemsPair().getPivot().getFallingObject().drop();
gameLoop.getPlayFieldTwo().getGridController().getGemsPair().getSlave().getFallingObject().drop();
gameLoop.doOneStep();
engine.clearDisplay();
layerManager.drawLayers(engine);
assertEquals("Game over message must be shown", numberOfQuadsDrawn + 2,
engine.getNumberOfQuadsDrawn());
}

71104
30-01-2008, 17:28
comunque mi sembra che quel test serva semplicemente a testare moooolto dall'alto che i due sprite "GameOver" appaiano; provo a scrivere un test analogo...

Bonfo
30-01-2008, 17:30
A me falliva! :eek: :eek:
Il che vuol dire che il test è sbagliato, perchè i gameOver dono displayati correttamente.
In più, come già detto, un test sul display del gameOver c'è già.

71104
30-01-2008, 17:34
A me falliva! :eek: :eek: pure a me infatti, ho detto che l'ho fatto compilare, non che passasse :D

In più, come già detto, un test sul display del gameOver c'è già. DEO GRATIAS :ave: :ave: :asd:

e allora che facciamo, canniamo?

fek
30-01-2008, 17:36
Canna pure allora.

71104
30-01-2008, 17:40
fatto; chi s'è visto s'è visto :fiufiu:

ok, il secondo adesso lo affronteremo con serietà :O

Bonfo
30-01-2008, 17:43
Eccolo:
check if reinitialization of GridController can be eliminated (TestGemCreationInGrid.java - line 22)

Ricordo i tre punti:
1) capire il TODO
2) capire se ha ancora senso
3) risolvere

Ehm.. questo non l'ho ancora letto. :asd:

Bonfo
04-02-2008, 08:01
Come siamo messi a TODO??

fek
04-02-2008, 08:48
Trasforma i TODO in Refactor This, cosi' spariscono con il programma Refactor This. Ogni commit, un Refactor This o volano i revert :)

71104
04-02-2008, 10:48
non tutti i TODO però necessitano di refactoring: alcuni (come il primo) vanno semplicemente eliminati e basta. direi che quelli da eliminare gli segnaliamo qui, tutti gli altri li convertiamo in REFACTOR THIS :read: