Como executar testes de leiningen tendo > (maior que) símbolo em seu nome no Windows?
-
20-12-2019 - |
Pergunta
Eu não posso referir-se aos testes, tendo ->
em seus nomes, porque >
símbolo é tratada como stdout redirecionamento.
Em PowerShell 4.0 eu executar estável atual Leiningen 2.4.2 com os parâmetros sendo ignorado por --%
:
PS> lein test :only --% my-project.core/foo->bar
Eu só vejo stderr no console, mas como um efeito colateral de eu chegar bar
o arquivo criado com o seguinte conteúdo:
lein test user
Ran 0 tests containing 0 assertions.
0 failures, 0 errors.
Solução
O problema está em lein.bat
arquivo.Quando %*
fica expandido para todos os argumentos passados na linha 303, todos os meus escapes são ido.Como uma solução temporária vejo citando símbolos especiais com um acento circunflexo (^
) e, em seguida, citando todos os circumflexes, que é igual a utilizar ^^^
para fazer isso funcionar:
PS> lein test :only my-project.core/foo-^^^>bar
Parece feio, mas funciona.Se existe uma solução melhor, prefiro que um.