|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 | ||
|
Bannato
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
|
Test Driven Development, Task 14.1.2 [71104 vs redcloud, GIUSTO IN RITARDO]
allora, richiesta del task:
Quote:
Quote:
|
||
|
|
|
|
|
#2 |
|
Bannato
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
|
dopo una breve spiegazione a redcloud sul TDD e sul Pair Programming, ecco il primo test:
Codice:
public void testCheckIncomingStones()
{
playField.addIncomingStones(5);
assertEquals(playField.getIncomingStones(), 5);
}
Ultima modifica di 71104 : 08-04-2006 alle 00:35. |
|
|
|
|
|
#3 |
|
Bannato
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
|
redcloud ha risolto quel test aggiungendo a PlayField:
Codice:
public int getIncomingStones()
{
return warningBox.getCounter();
}
la prima soluzione che era venuta in mente ad entrambi esaminando il codice di playField era una variabile globale, lui invece ne ha trovata una più semplice ragazzi, purtroppo devo dire che stasera abbiamo scritto pochissimo codice a causa del fatto che redcloud era al suo primo pair ma anche a causa del fatto che non esaminavo il codice da parecchio; adesso però siamo partiti e abbiamo capito come fare: da adesso andiamo molto più spediti. per stasera facciamo solo altri due test e relative implementazioni, ma contiamo di finire entro domenica; io domani esco di sera e di pomeriggio sono a casa, se sabato pomeriggio va bene anche a redcloud (lo so, sto chiedendo qualcosa di infame ^_^) possiamo finire anche domani. nel frattempo ecco il prossimo semplicissimo test: Codice:
public void testInsertNoStones()
{
controller.insertStones(0);
assertFalse(controller.getGrid().isGemAt(0, 0));
}
Ultima modifica di 71104 : 08-04-2006 alle 01:43. |
|
|
|
|
|
#4 |
|
Bannato
Iscritto dal: Feb 2003
Città: Anche Chuck Norris usa Debian e Gnome
Messaggi: 1270
|
Oggi pomeriggio ci sarò
|
|
|
|
|
|
#5 | |
|
Bannato
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
|
Quote:
cmq, soluzione di redcloud all'ultimo test: Codice:
public void insertStones(int stoneNumber)
{
;
}
prossimo test: Codice:
public void testInsertFirstStone()
{
controller.insertStones(1);
assertTrue(controller.getGrid().isGemAt(0, 0));
assertFalse(controller.getGrid().isGemAt(0, 1));
}
|
|
|
|
|
|
|
#6 |
|
Bannato
Iscritto dal: Feb 2003
Città: Anche Chuck Norris usa Debian e Gnome
Messaggi: 1270
|
Eeeee ormai ho trovato un passatempo produttivo! Addio ogame!
|
|
|
|
|
|
#7 | |
|
Bannato
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
|
Quote:
![]() allora, soluzione di redcloud: Codice:
public void insertStones(int stoneNumber)
{
if(stoneNumber==0)
{
;
}
else
{
grid.insertGem(0, 0, Stone.create(DroppableColor.EMERALD));
}
}
e a seguire a ruota l'inserzione delle pietre successive all'ottava. notte a tutti |
|
|
|
|
|
|
#8 |
|
Senior Member
Iscritto dal: Dec 2000
Città: bologna
Messaggi: 1309
|
stamattina prima di procedere mi puoi conttattare su msn?(sono b0l_padawan, ho gia provato a contattarti)
devo committare una modifica grossa su gridController e voglio farla prima che continuiate a toccarla se no è un macello |
|
|
|
|
|
#9 |
|
Senior Member
Iscritto dal: Dec 2000
Città: bologna
Messaggi: 1309
|
la modifica era piccola sono riuscito ad arrangiarmi per i fatti miei ed ho committato. Cmq continuo lo sviluppo del pattern, se riprendete fatemi sapere.
|
|
|
|
|
|
#10 | |
|
Senior Member
Iscritto dal: Nov 2005
Messaggi: 1545
|
Quote:
Passa anche se gli fai ritornare 5 direttamente |
|
|
|
|
|
|
#11 |
|
Senior Member
Iscritto dal: Nov 2005
Città: Bologna
Messaggi: 1303
|
Quando io e RedCloud avevamo iniziato questo task Ufo aveva chiesto se era possibile non complicare Grid e GrodController.
In grid è già presente il metodo insert insertStoneInColumn()...perchè non usate e modficate quello?? SOprattutto questo metodo è accedibile direttamente da playField: Codice:
playField.getGridController().getGrid().insertStoneInColumn() Pensateci se è una cosa che vi piace o no. A me piace moooolto |
|
|
|
|
|
#12 |
|
Bannato
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
|
eh Bonfo, sto metodo non l'avevamo neanche notato ^^
grazie per avercelo fatto notare, il codice di Diamond Crush è doventato piuttosto vasto e quando si pensa ai test tocca pure cercare i metodi giusti in mezzo a tanti... |
|
|
|
|
|
#13 | |
|
Bannato
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
|
Quote:
vedremo dove ci porterà il codice. |
|
|
|
|
|
|
#14 |
|
Bannato
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
|
scusate, ma il metodo insertStoneInColumn perché l'avete messo visto che non lo usa nessuno...? (Eclipse non trova riferimenti)
era stato messo apposta per questo task? |
|
|
|
|
|
#15 | |
|
Bannato
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
|
Quote:
Codice:
public void testInsertNextStones()
{
controller.insertStones(2);
assertTrue(controller.getGrid().isGemAt(0, 0));
assertTrue(controller.getGrid().isGemAt(0, 1));
assertFalse(controller.getGrid().isGemAt(0, 2));
}
|
|
|
|
|
|
|
#16 |
|
Bannato
Iscritto dal: Feb 2003
Città: Anche Chuck Norris usa Debian e Gnome
Messaggi: 1270
|
Per superare
Codice:
public void testInsertNextStones()
{
controller.insertStones(2);
assertTrue(controller.getGrid().isGemAt(0, 0));
assertTrue(controller.getGrid().isGemAt(0, 1));
assertFalse(controller.getGrid().isGemAt(0, 2));
}
Codice:
public void insertStones(int stoneNumber)
{
for(int i=0; i<stoneNumber; i++)
{
grid.insertGem(0, i, Stone.create(DroppableColor.EMERALD));
}
}
|
|
|
|
|
|
#17 |
|
Bannato
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
|
bene, adesso vediamo i colori:
Codice:
public void testStoneColor()
{
controller.insertStones(8, pattern);
for(int i = 0; i < 8; i++) {
assertEquals(grid.getGemAt(0, i).getColor(), pattern.getDroppableColor(i));
}
}
Ultima modifica di 71104 : 08-04-2006 alle 15:29. |
|
|
|
|
|
#18 | |
|
Senior Member
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11794
|
Quote:
Se tutti dovessimo lasciare metodi che seriviranno in futuro, il codice diventa grande il doppio. Nel repository voglio solo codice che e' usato, e che e' testato.
__________________
"We in the game industry are lucky enough to be able to create our visions" @ NVIDIA |
|
|
|
|
|
|
#19 |
|
Bannato
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
|
ho spostato tutti i test di questo task in TestIncomingStones, tranne quello per getIncomingStones che si trova ancora in mezzo a quelli per PlayField.
|
|
|
|
|
|
#20 | |
|
Bannato
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
|
Quote:
oltrettutto redcloud ha anche provato ad usarlo in insertStones, ma non è riuscito a farlo funzionare... EDIT: lo eliminerò dopo perché la sua eliminazione comporta anche qualche correzione in alcuni test che lo usano (non per testarlo però, almeno non tutti); per ora quello che ci preme è di finire quest'altro test perché tra poco devo uscire O.o' Ultima modifica di 71104 : 08-04-2006 alle 15:51. |
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 08:39.




















