FedericoFuentesWeber / TPs-PdeP-2018

0 stars 0 forks source link

10) Acorten los tests: Puede instanciar una clase adentro de lo que envían por parámetro #42

Closed sanuzzi closed 5 years ago

sanuzzi commented 5 years ago

Acá y en los tests siguientes les quedó medio largo:

    test "Xenia compra una espada un collar de 5 perlas, una armadura sin refuerzo, otra con cota de malla y se queda con 70,5"{
        const cotademalla = new CotaDeMalla(unidadesDeLucha = 5)
        const peto1 = new Armadura()
        const peto2 = new Armadura()
        peto2.refuerzo(cotademalla)
        const espada = new ArmaDeFilo()
        xenia.compraObjeto(peto1)
        xenia.compraObjeto(peto2)
        xenia.compraObjeto(espada)
        xenia.compraObjeto(collarDivino)
        assert.equals(xenia.monedas(),70.5)

En vez de eso, pueden directamente instanciar las armaduras y demás en el punto de mandarlas por parámetro:

    test "Xenia compra una espada un collar de 5 perlas, una armadura sin refuerzo, otra con cota de malla y se queda con 70,5"{
        const espada = 
        xenia.compraObjeto(new Armadura())
        xenia.compraObjeto(new Armadura( refuerzo = new CotaDeMalla(unidadesDeLucha = 5) ))
        xenia.compraObjeto(new ArmaDeFilo())
        xenia.compraObjeto(collarDivino) // De dónde salía el collar divino??
        assert.equals(xenia.monedas(),70.5)

Lo mismo para los tests siguientes.

Y en el último, en el de libro de hechizos, podrían crearlo aparte por expresividad, pero inicialícenlo en un solo paso.