Program-AR / pilas-bloques-ember

Repositorio auxiliar de Pilas Bloques. Repo principal en el link.
https://github.com/Program-AR/pilas-bloques-app
GNU Affero General Public License v3.0
69 stars 29 forks source link

Test desafios con parametros #1519

Closed danielferro69 closed 10 months ago

danielferro69 commented 10 months ago

Resolves #1351

Por alguna razon (que no pude descubrir a pesar de poder revisar el codigo) estos test que reciben parametros funcionan cuando el valor que se pasa, se pasa asi:

           <value name="direccion">
                <block type="param_get" id="26">
                    <field name="VAR">direccion</field>
                </block>
           </value>

y no asi:

            <value name="direccion">
                  <block type="variables_get" id="A$I=sXn2/C/-w-dC{cM$">
                       <mutation var="direccion" parent="126"></mutation>
                  </block>
             </value>

Como que la interpretacion de mutation no estaria funcionando de la misma forma que lo hace cuando se utiliza field name. luego, si el bloque es de tipo variables_get o param_get da igual.

Cambiando esto en las soluciones, resolvió los tests

Parecia que el test se freezaba pero en realidad no se podia ejecutar (y por ello el timeout) por falta de bloques. Cuando se ejecutan los tests si se destilda la opcion que oculta el contenedor del test (hide container), se pueden observar los bloques en pantalla y no solo la escena y alli se podia observar que faltaban bloques, aunque en realidad estaban, pero bajo la "definicion" de <mutation var>

image

y por otro lado, el error de los 2 test en el test:CI esta dado por el highlighter de procedimientos al analizar el campo id (que no tiene que ver con el id que le colocamos o no en la solucion). Supongo (sin mucho mas análisis realmente) que es a raiz de intentar highlightear (valga la expresion) la definicion del procedimiento y no el momento de la ejecucion. Pero no explica por qué no falla en TitoRecargado o en el CangrejoAguafiestas SALVO por el hecho de que estos desafios tienen una escena propia definida en exercises y los dos nuevos se construyen a partir de la escena generica de cada personaje (EscenaCapy/EscenaYvoty) La alternativa o contraprueba para verificar esto (que no hice aun) sería hacer para al menos uno de estos nuevos desafios, una clase en exercises como TitoRecargado, digamos un InifinitosTrofeos especifico y ver si a partir de alli, el test (volviendo el highlighter a como estaba) no falla. Porque es el unico argumento que puedo esgrimir para explicar la diferencia y por qué falla en uno y en otro no siendo que ambos tienen la misma solucion (porque salvo un par de bloques, las soluciones son identicas).