Common Lisp `rt` suites (testing/*.lisp + .testvec) and Clojure `lein test-all` project.clj aliases are not recognised

Abierto
#265 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
3/5
Tiempo estimado
Medio día
Aptitud para principiantes
62/100
Tipo de issue
Error
Claridad
Bien especificado
Estado de actividad
Activo
Stack tecnológico
python
Área
devtools

Línea de trabajo

The two false negatives come from ecosystem detection in project_validator/ecosystems/common_lisp.py (the path regex near line 50, the contains regex at lines 52-53, and _RUNS_TESTS at lines 57-58) and project_validator/ecosystems/clojure.py (lines 76-80, which match only literal lein test invocations). Check facts/roles.py:27 for how testing is already treated as a test directory. Done means the two repro cases (testing/t.lisp with rtest:deftest and a project.clj alias that expands to test) report PASS, with existing tests still passing.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

ironclad: 137 .testvec vectors + rtest:deftest forms under testing/, run by every job → FAIL "no tests found (FiveAM, Parachute, Rove or Prove tests (tests/*.lisp))". compojure: CI runs lein test-all, a project.clj alias for lein with-profile … test → WARN "no CI runs clojure -M:test, lein test …". Aliases in project.clj (and deps.edn) are readable.

Evidence from the corpus audit

sharplispers/ironclad / tests-run
  • kind: FALSE_NEGATIVE
  • actual: FAIL "Common Lisp: no tests found (FiveAM, Parachute, Rove or Prove tests (tests/*.lisp))"
  • expected: PASS: an rt test suite in testing/ (137 .testvec vectors + rtest:deftest forms) run by every CI job.
  • evidence: ironclad.asd:249-256: (defsystem "ironclad/tests" :depends-on ("ironclad" "rt") ... :perform (test-op (o s) (or (funcall (intern "DO-TESTS" (find-package "RTEST"))) ...)) :components ((:module "testing" ...;
    testing/test-vectors/ironclad.lisp:6: (rtest:deftest quotationp.1; .github/workflows/ci.yml:43:
    run: ros -e '...' -e '(ql:quickload "ironclad/tests")' -e '(unless (rt:do-tests) (uiop:quit -1))'.
    project_validator/ecosystems/common_lisp.py:50: path=re.compile(r"(?:^|/)(?:tests?|t)/.+\.lisp$|-tests?\.lisp$")
    excludes testing/ (although facts/roles.py:27 already treats testing as a test directory), and the
    contains regex (lines 52-53) knows (deftest/(rove:deftest but not (rtest:deftest/(rt:deftest; _RUNS_TESTS
    (lines 57-58) does not know (rt:do-tests).
  • repro: x.asd with (defsystem "x/tests" :depends-on ("rt") ...), testing/t.lisp containing (rtest:deftest a 1 1),
    workflow run: ros -e '(ql:quickload "x/tests")' -e '(unless (rt:do-tests) (uiop:quit -1))'
  • confidence: high
weavejester/compojure / tests-run
  • kind: FALSE_NEGATIVE
  • actual: WARN "tests found in 5 file(s), but no CI configuration runs clojure -M:test (or -X:test, lein test, kaocha, bb test)"
  • expected: PASS: CI runs lein test-all, a project.clj alias that runs lein with-profile ... test.
  • evidence: .github/workflows/test.yml:29: run: lein test-all; project.clj:17-18: :aliases {"test-all" ["with-profile" "default:+1.10:+1.11:+1.12" "test"]}. project_validator/ecosystems/clojure.py:76-80 matches only
    literal ("lein","test") etc.; Leiningen :aliases are not resolved (the BEAM profile resolves Mix aliases, the
    JS profile package scripts; docs/ecosystems/clojure.md documents only CLI aliases). lein with-profile X test
    (the expansion) is not matched either.
  • repro: project.clj with :aliases {"test-all" ["with-profile" "+a" "test"]}, test/x_test.clj with deftest,
    workflow run: lein test-all
  • confidence: high

Found by the regression-corpus audit (235 real repositories, one or more per ecosystem profile; corpus and expected results in corpus/). Evidence is quoted from the audited checkouts at the commits pinned in corpus/projects.toml; <checkouts>/<owner>__<repo> is such a checkout.

🤖 Generated with Claude Code

https://claude.ai/code/session_01ByTXNqDWdM7HzezrFtEvQt

Lenguaje dominante
Python
Estrellas
4
Forks
1
Merge medio
10 h 41 min
PR fusionados (30 d)
79

Preparar el entorno

Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de cpp-best-practices/project_validator

Todos los issues de cpp-best-practices/project_validator

Issues similares

Más issues de Python

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.