@@ -14,11 +14,14 @@ inputs:
1414
1515outputs :
1616 test-output :
17- description : ' Output completo dos testes executados'
18- value : ${{ steps.run-tests.outputs.output }}
19- test-exit-code :
20- description : ' Código de saída dos testes (0 = sucesso, outros = falha)'
21- value : ${{ steps.run-tests.outputs.exit-code }}
17+ description : ' Output completo dos testes'
18+ value : ${{ steps.run-tests.outputs.test-output }}
19+ test-result :
20+ description : ' Resultado dos testes (success/failure)'
21+ value : ${{ steps.run-tests.outputs.test-result }}
22+ test-summary :
23+ description : ' Resumo dos testes executados'
24+ value : ${{ steps.run-tests.outputs.test-summary }}
2225
2326runs :
2427 using : ' composite'
@@ -87,21 +90,32 @@ runs:
8790 MGC_PATH : ${{ env.MGC_PATH_RESOLVED }}
8891 run : |
8992 echo "Executando testes com MGC_PATH: $MGC_PATH"
93+
9094 # Executa os testes e captura a saída
95+ set +e # Não falha imediatamente em caso de erro
9196 output=$(poetry run pytest ${{ inputs.pytest-args }} --tb=short --ignore=tests/test_auth.py 2>&1)
9297 exit_code=$?
98+ set -e
9399
94- # Adiciona a saída ao resumo do step
95- echo "## Resultado dos Testes" >> $GITHUB_STEP_SUMMARY
96- echo '```' >> $GITHUB_STEP_SUMMARY
97- echo "$output" >> $GITHUB_STEP_SUMMARY
98- echo '```' >> $GITHUB_STEP_SUMMARY
99-
100- # Define as outputs
101- echo "output<<EOF" >> $GITHUB_OUTPUT
100+ # Salva o output completo
101+ echo "test-output<<EOF" >> $GITHUB_OUTPUT
102102 echo "$output" >> $GITHUB_OUTPUT
103103 echo "EOF" >> $GITHUB_OUTPUT
104- echo "exit-code=$exit_code" >> $GITHUB_OUTPUT
105104
106- # Retorna o código de saída para que o step falhe se os testes falharem
105+ # Determina o resultado
106+ if [ $exit_code -eq 0 ]; then
107+ echo "test-result=success" >> $GITHUB_OUTPUT
108+ echo "✅ Testes executados com sucesso"
109+ else
110+ echo "test-result=failure" >> $GITHUB_OUTPUT
111+ echo "❌ Testes falharam"
112+ fi
113+
114+ # Extrai resumo (últimas linhas do pytest)
115+ summary=$(echo "$output" | tail -n 5)
116+ echo "test-summary<<EOF" >> $GITHUB_OUTPUT
117+ echo "$summary" >> $GITHUB_OUTPUT
118+ echo "EOF" >> $GITHUB_OUTPUT
119+
120+ # Mantém o exit code original
107121 exit $exit_code
0 commit comments