<div dir="ltr">2013/11/8 Valerio Maggio <span dir="ltr"><<a href="mailto:valerio.maggio@gmail.com" target="_blank">valerio.maggio@gmail.com</a>></span><br><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div style="word-wrap:break-word"><br><div><div>A me, sinceramente, un pochino si :D</div><div>Scherzi a parte, credo che in questo caso imho hai "spostato" il problema, "specializzando" il setUp della superclasse.</div>
</div></div></blockquote><div><br></div><div>Condivido.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word"><div><div>Invece, se non ho capito male, Piergiuliano chiedeva se ci fosse qualche altro escamotage per invocare il setUp di una superclasse (Father) durante l'esecuzione del test della classe Child.</div>
</div></div></blockquote><div><br></div><div>Piu' o meno: aggiungi che il test della classe figlio ha bisogno sia del setup di papi che del suo setup.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div style="word-wrap:break-word"><div><div><br></div><div>La mia domanda è: durante l'esecuzione del test o durante l'esecuzione del setUp della classe Child?</div></div></div></blockquote><div><br></div><div>"Durante" e' un'espressione pericolosa. In JUnit ad esempio le setup degli antenati vengono eseguite prima delle setup dei figli, partendo dall'antenato piu' lontano e scendendo in cascata fino al figlio. Non che io stia dicendo che e' una buona idea avere gerarchie di test con molti livelli, neh...</div>
<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word"><div><div><br></div><div>Nel primo caso, se la classe Child non ridefinisce un setUp, naturalmente, viene invocato quella della classe Father.</div>
</div></div></blockquote><div><br></div><div>Certo.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word"><div><div>Se, invece, lo ridefinisce, non mi vengono in mente soluzioni *senza* l'invocazione esplicita di super(Child, self).setUp().</div>
</div></div></blockquote><div><br></div><div>Capito.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word"><div><div>Btw, non la vedo una grande limitazione.</div>
</div></div></blockquote><div><br></div><div>No, non e' una grande limitazione, fa solo un po' schifo. :)</div><div>Ad esempio, se stai convertendo una gerarchia di test da unittest a nose e vuoi unifromare la convenzione a "setup" anziche' "setUp" devi ricordarti di cambiare tutte le chiamate nei figli.</div>
<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word"><div><div class="im"><span style="color:rgb(34,34,34)">Mmm imho no… nel senso che con la metaclasse agisci a livello di classe e non di istanza e il setUp deve essere invocato per *ogni* test dell'istanza correntemente in esecuzione.</span><br>
</div><div>Probabilmente mi sbaglio, non c'ho riflettuto a lungo, ma ad intuito questo è quello che mi viene in mente.</div><div><br></div></div></div></blockquote><div><br></div><div><br></div><div>Capito, grazie.</div>
<div><br></div><div>Giuliano</div><div> </div></div>-- <br>Piergiuliano Bossi<br>Blog: <a href="http://thinkingbox.wordpress.com/" target="_blank">http://thinkingbox.wordpress.com/</a><br>Twitter: <a href="http://twitter.com/thinkingbox" target="_blank">http://twitter.com/thinkingbox</a> (English)<br>
Twitter: <a href="http://twitter.com/scatolapensante" target="_blank">http://twitter.com/scatolapensante</a> (Italiano)<br><div>Google+: <a href="https://plus.google.com/u/0/108187981162465525118" target="_blank">https://plus.google.com/u/0/108187981162465525118</a></div>
</div></div>