uqbar-project / wollok

Wollok Programming Language
GNU General Public License v3.0
60 stars 16 forks source link

Cuando un archivo tiene múltiples describes y un test tiene el atributo `only`, los otros describes ejecutan igual #1933

Closed fdodino closed 3 years ago

fdodino commented 3 years ago

Ej:

describe "tests de raul" {  
    test "costo mano de obra por pintar 20 m2" { ... }

    test "costo total por pintar 20 m2" { ... }
}

describe "tests de carla" {
    only test "costo mano de obra por pintar 25 m2" {
        ...
    }

    test "costo total por pintar 26 m2" { ... }
}

Se ejecutan los tests de raul y un solo test de carla. Me parece que debe ejecutar solo el primer test de carla.

fdodino commented 3 years ago

Bah, venía embalado pero ahora que lo pienso quizás sea mejor dejar el comportamiento actual... qué piensan @nscarcella @npasserini @asanzo @tesonep @lspigariol ?

nscarcella commented 3 years ago

Esto existe?

nscarcella commented 3 years ago

Bueno, no sé... Opino porque es gratis:

A mi nunca me gustaron ese tipo de mecanismos en los frameworks de tests. Me parece que complican la sintaxis y nunca llegan a cubrir todas las permutaciones que uno querría que tengan (los dos comportamientos que menciona Fer me parecen deseables en diferentes casos, a veces querés ejecutar exclusivamente un test, a veces querés excluir sólo uno de un conjunto, a veces querés cherrypickear qué test corre y qué test no, etc...), con lo cual necesitarías por lo menos dos palabras clave diferentes. Además, si ya tengo que cambiar los fuentes, para eso comento el test y fue.

Este tipo de comportamiento para mi viene de la mano de un buen runner. En Wollok-xtext podés seleccionar el test que querés y correr ese sólo. En TS heredamos todos los filtros de mocha y podemos parametrizar qué test o describe queremos por consola.

menos es más.

asanzo commented 3 years ago

A mí me gustaría poder elegir correr 1 test solo. No tengo opinión formada sobre si hacerlo por código ó por GUI (inicialmente busqué un botón derecho -> correr sólo este en la vista de tests), pero si quiero debuggear y/o evitar perder tiempo de que corran todos los tests y/o sacar el overhead de ir a buscar el test que querías, quiero que se pueda correr uno solo.

Creo que independientemente del describe, aunque de nuevo no tengo seguridades. Perdón :$

Por cierto, @nscarcella, creo que wollok xtext no tiene una GUI para elegir correr uno solo como decís. O si lo tiene porfa decime cuál es xD.

nscarcella commented 3 years ago

Por cierto, @nscarcella, creo que wollok xtext no tiene una GUI para elegir correr uno solo como decís. O si lo tiene porfa decime cuál es xD

@asanzo No, tenés razón. Creía recordar que podías darle click derecho a los tubitos de ensayo del outline para correrlos solos, pero se ve que flashié.

lspigariol commented 3 years ago

No fue en tema en el que me involucré a opinar previamente, soy suficientemente feliz sin este feature. Pero ya que como opinar es gratis, me parece mejor manejarlo via GUI que agregando palabras reservadas a la definición del lenguaje. Imaginando, en caso que hubiera una GUI que permite mostrar mas de un diagrama, o si se corre sin tener el diagrama de objetos abierto, u otras variantes, preferiría que se mantenga minimalista la sintaxis.

fdodino commented 3 years ago

Ah, una aclaración que puede ayudar: originalmente quise hacer que el feature fuera por la GUI pero no lo pude resolver, por eso fui por la opción only que es lo que usamos actualmente para TestCafe en el laburo.

nscarcella commented 3 years ago

Fue un tema con el Eclipse, Fer? O con el setup de la ejecución? Pregunto de curioso

N.

On Mon, Sep 7, 2020, 12:43 PM Fernando Dodino notifications@github.com wrote:

Ah, una aclaración que puede ayudar: originalmente quise hacer que el feature fuera por la GUI pero no lo pude resolver, por eso fui por la opción only que es lo que usamos actualmente para TestCafe https://devexpress.github.io/testcafe/ en el laburo.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/uqbar-project/wollok/issues/1933#issuecomment-688401093, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAFPE256MGXTHP4H7AV3CT3SET5QJANCNFSM4QPXU74A .

fdodino commented 3 years ago

Fue hace más de un año, no lo recuerdo bien. Cuando hacés botón derecho, Ejecutar, Eclipse RCP te devuelve diferente tipos de selector: IFile, IProject, ISourceFolder, etc. pero no encontré la forma de saber si estás parado en el editor, o más concretamente en qué línea o qué nodo dentro del archivo seleccionado. Sí es fácil desde el launcher pasarle el nombre de un test, o de varios tests, como hace mocha/chai/jest, pero no llego a hacer eso si no puedo capturar en qué nodo estoy.

nscarcella commented 3 years ago

Y si se triguereara desde otro lugar? Onda la solapa de outline, dónde están listados los tests?

Igual nada, no me jode la alternativa en la sintaxis pero me interesa entender mejor cuáles son los focos de complejidad de las distintas implementaciones.

On Mon, Sep 7, 2020, 12:53 PM Fernando Dodino notifications@github.com wrote:

Fue hace más de un año, no lo recuerdo bien. Cuando hacés botón derecho, Ejecutar, Eclipse RCP te devuelve diferente tipos de selector: IFile, IProject, ISourceFolder, etc. pero no encontré la forma de saber si estás parado en el editor, o más concretamente en qué línea o qué nodo dentro del archivo seleccionado. Sí es fácil desde el launcher pasarle el nombre de un test, o de varios tests, como hace mocha/chai/jest, pero no llego a hacer eso si no puedo capturar en qué nodo estoy.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/uqbar-project/wollok/issues/1933#issuecomment-688406751, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAFPE2ZV4XDHLBBSF3FSNMDSET6Y5ANCNFSM4QPXU74A .

fdodino commented 3 years ago

Lo del outline es exactamente lo que pensé, pero no lo llegué a investigar, de hecho no estoy seguro si se abre una ventana emergente desde ahí.

fdodino commented 3 years ago

Bueno, cierro el issue porque no termina de convencerme que lo haya cargado...