View Full Version : [Pair] VICIUS vs. m.distrutti
Il task chiede di aggiungere un nuovo MenuItem per l'advanced mode. Visto che ancora non esiste ma sappiamo le sue proprietà usiamo questo test per assicurarci che sia presente nel codice.
public void testAdvancedModeCreation()
{
assertEquals("ADVANCED MODE", MenuItem.ADVANCED_MODE.toString());
assertEquals(2, MenuItem.ADVANCED_MODE.index());
assertEquals(new MenuActionNone().getClass(), MenuItem.ADVANCED_MODE.getAction().getClass());
}
Per far passare questo test devi introdurre il metodo getAction() in MenuItem perché non è presente. O meglio c'è ma non è accessibile dal test. Con due azioni dal menu refactor dovresti risolvere.
vic, fai il commit dei test che non passano commentati o disabilitati per favore.
Hai ragione. Provvedo subito.
m.distrutti
22-04-2008, 22:24
-prima assert passata creando un oggetto menuitem nel file MenuItem.java :oggetto ADVANCED_MODE con parametri index, null, e stringa "ADVANCED MODE"
-seconda assert passata impostando opportunatamente l'index a 2 nel parametro passato al costruttore
:D
PS: grazie a qualche spinta di Jappilas :P
m.distrutti
22-04-2008, 23:13
-passata anche la terza assert : creando un metodo getAction appropriato e importando il package nel file di test
:)
mi sta venendo un dubbio pero su getAction(), nella classe e' gia presente un metodo action() con le stesse funzionalità ma incapsulato con visibilità privata
in più queste assert non vengono utilizzate per il test degli altri MenuItem del gioco
m.distrutti
22-04-2008, 23:25
messo il controllo della stringa(prima assert) nel test testMenuItemString visto che vengono fatte tutte li da quel che vedo
gli index non sono controllati nei test degli altri MenuItem
scusatemi ma mi sono 'scimmiato' nel codice e sto guardando un po in giro ihih:D :D :D
m.distrutti
22-04-2008, 23:58
io vado a letto, cmq ho un problema con ant, il test lo passo completamente
per quanto riguarda domani non so a che ora torno a casa perchè ho un aperitivo con dei clienti, provo a farvi sapere in tempo
notte a tutti;)
Hmm ma non ci sarebbe la regoletta del: 1 test 1 assert?
Comunque M.Distrutti la tua firma e` veramente tragica! :P
-prima assert passata creando un oggetto menuitem nel file MenuItem.java :oggetto ADVANCED_MODE con parametri index, null, e stringa "ADVANCED MODE"
-seconda assert passata impostando opportunatamente l'index a 2 nel parametro passato al costruttore
:D
PS: grazie a qualche spinta di Jappilas :P
1 test 1 assert.
Per favore rifattorizza i test e, inoltre, posta codice e test qui sul forum. Grazie! :)
m.distrutti
23-04-2008, 10:39
Hmm ma non ci sarebbe la regoletta del: 1 test 1 assert?
Comunque M.Distrutti la tua firma e` veramente tragica! :P
purtroppo e' una realtà che va resa nota a parere mio :cry: :cry: alle superiori la gente che vuole iniziare in questo campo deve farlo in modo autodidatta( in italia poi anche più avanti ahah)
cmq appena torno a casa posto tutto :P, grazie a voi :)
1 test 1 assert.
Per favore rifattorizza i test e, inoltre, posta codice e test qui sul forum. Grazie! :)
Ne ho messe più di una apposta per insegnarli questa cosa perché andando avanti con il task dovrebbe succedere qualcosa ma voi mi smontate così :eek:
Ne ho messe più di una apposta per insegnarli questa cosa perché andando avanti con il task dovrebbe succedere qualcosa ma voi mi smontate così :eek:
Ehehe ok :D
L'importante e' che alla fine del task ci sia un assert per test.
m.distrutti
23-04-2008, 16:48
Ehehe ok :D
L'importante e' che alla fine del task ci sia un assert per test.
uhm
devo in pratica splittare tutti i test con le assert , creando un test per assert nel file MenuItam.java XD?
oddio mi divertiro molto sta sera :D
EDIT:PS: sono operativo all'orario di ieri ^_^
uhm
devo in pratica splittare tutti i test con le assert , creando un test per assert nel file MenuItam.java XD?
oddio mi divertiro molto sta sera :D
EDIT:PS: sono operativo all'orario di ieri ^_^
Non proprio. Due si possono cancellare perché già presenti in altri test. l'altra va a finire in uno a parte leggermente modificata. Ma ci arriviamo alla fine.
m.distrutti
23-04-2008, 21:32
public static final MenuItem ADVANCED_MODE = new MenuItem(2, new MenuActionNone(), "ADVANCED MODE");
......
public MenuAction getAction()
{
return this.action;
}
questo e' il codice aggiunto per far accettare il test alla junit
Bene dopo il refactoring del codice di cui abbiamo parlato in chat questi sono i nuovi test da passare per assicurarsi che quando ci si sposta nel menu gli elementi siano selezionati nel giusto ordine.
public void testAdvancedModeIsVersusModeNextItem()
{
mainMenu.selectMenuItem(MenuItem.VERSUS_MODE);
mainMenu.selectNextItem();
assertEquals(MenuItem.ADVANCED_MODE, mainMenu.getSelectedItem());
}
public void testAdvancedModeIsQuitPreviousItem()
{
mainMenu.selectMenuItem(MenuItem.QUIT);
mainMenu.selectPreviousItem();
assertEquals(MenuItem.ADVANCED_MODE, mainMenu.getSelectedItem());
}
public void testVersusModeIsAdvancedModePreviousItem()
{
mainMenu.selectMenuItem(MenuItem.ADVANCED_MODE);
mainMenu.selectPreviousItem();
assertEquals(MenuItem.VERSUS_MODE, mainMenu.getSelectedItem());
}
public void testQuitIsAdvancedModeNextItem()
{
mainMenu.selectMenuItem(MenuItem.ADVANCED_MODE);
mainMenu.selectNextItem();
assertEquals(MenuItem.QUIT, mainMenu.getSelectedItem());
}
m.distrutti
23-04-2008, 23:21
public static void initialiseMenuItems()
{
MenuItem.VERSUS_MODE.previousItem = MenuItem.QUIT;
MenuItem.VERSUS_MODE.nextItem = MenuItem.ADVANCED_MODE;
MenuItem.ADVANCED_MODE.previousItem = MenuItem.VERSUS_MODE;
MenuItem.ADVANCED_MODE.nextItem = MenuItem.QUIT;
MenuItem.QUIT.previousItem = MenuItem.ADVANCED_MODE;
MenuItem.QUIT.nextItem = MenuItem.VERSUS_MODE;
}
per la selezione ciclica
da ant c'e' stato un build broken, corretto nel test menuloop in seguito all'aggiunta del nuovo MenuItem
cambiata anche la modalita Versus per ADVANCED_MODE come richiesto :D
il mio primo commit:sofico: :sofico: :sofico:
EDIT: intendevo dire build failed XD, non ho rotto niente eh :D
-------
<---- padawan di jappilas :D
jappilas
24-04-2008, 13:49
stiamo creando un altro mostro... :D
Questo task in particolare era molto carino da fare in pair visto che c'era un po' di tutto dentro. Test semplici, refactoring dei test e codice, side effect in altri test, l'uso di ant prima dei commit ecc. ecc.
m.distrutti
24-04-2008, 14:01
Questo task in particolare era molto carino da fare in pair visto che c'era un po' di tutto dentro. Test semplici, refactoring dei test e codice, side effect in altri test, l'uso di ant prima dei commit ecc. ecc.
si in effetti mi ha istruito molto :P, come inizio penso sia andato bene:rolleyes:
si in effetti mi ha istruito molto :P, come inizio penso sia andato bene:rolleyes:
Più che bene ;)
si in effetti mi ha istruito molto :P, come inizio penso sia andato bene:rolleyes:
Si', e' stato ottimo :)
E di solito e' anche molto divertente. Mi piange il cuore non riuscire a fare dei pair in questo periodo perche' sono sempre in ufficio la sera.
stiamo creando un altro mostro... :D
Decisamente, nel task 3 ha fatto praticamente tutto lui :)
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.