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

Aberta
#265 0 comentários 0 reações 0 responsáveis Ver no GitHub

Mantenedores costumam responder em até 1 dia

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
3/5
Tempo estimado
Meio dia
Facilidade para iniciantes
62/100
Tipo de issue
Bug
Clareza
Claramente especificada
Status de atividade
Ativa
Stack de tecnologia
python
Domínio
devtools

Direção de pesquisa

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.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

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

Linguagem predominante
Python
Estrelas
4
Forks
1
Merge médio
10h 41min
PRs com merge (30d)
79

Preparar o ambiente

Este projeto não oferece contêiner de desenvolvimento, Dockerfile nem guia de contribuição, então a configuração fica por sua conta: comece pelo README e veja nosso guia da primeira contribuição para os passos gerais.

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de cpp-best-practices/project_validator

Todas as issues de cpp-best-practices/project_validator

Issues semelhantes

Mais issues de Python

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.