|
41 | 41 | - name: Verify that the Docker image for the action builds |
42 | 42 | run: docker build . --file Dockerfile |
43 | 43 |
|
44 | | - integration-tests: |
| 44 | + integration-tests-action: |
45 | 45 | needs: build |
46 | 46 | runs-on: ubuntu-latest |
47 | 47 | strategy: |
|
90 | 90 | - name: Verify integration test results |
91 | 91 | run: | |
92 | 92 | . .venv/bin/activate |
93 | | - uv pip list |
| 93 | + uv pip list |
| 94 | + echo "feedback_${{ matrix.model }}=${{ steps.integration.outputs.feedback }}" >> $GITHUB_OUTPUT |
| 95 | + python3 -u -m pytest tests/integration.py |
| 96 | +
|
| 97 | + integration-tests-env: |
| 98 | + needs: build |
| 99 | + runs-on: ubuntu-latest |
| 100 | + strategy: |
| 101 | + matrix: |
| 102 | + model: [ |
| 103 | + gemini-2.5-flash, |
| 104 | + grok-code-fast, |
| 105 | + claude-sonnet-4-20250514, |
| 106 | + google/gemma-2-9b-it, |
| 107 | + sonar |
| 108 | + ] |
| 109 | + fail-fast: false |
| 110 | + steps: |
| 111 | + - uses: actions/checkout@v5 |
| 112 | + |
| 113 | + - name: Install uv package manager |
| 114 | + uses: astral-sh/setup-uv@v6 |
| 115 | + with: |
| 116 | + version: "latest" |
| 117 | + version-file: "pyproject.toml" |
| 118 | + python-version: 3.11 |
| 119 | + enable-cache: true |
| 120 | + |
| 121 | + - run: uv sync |
| 122 | + |
| 123 | + - name: Integration test ${{ matrix.model }} |
| 124 | + id: integration |
| 125 | + env: |
| 126 | + INPUT_REPORT-FILES: tests/sample_report.json,tests/json_dict_div_zero_try_except.json |
| 127 | + INPUT_STUDENT-FILES: tests/sample_code.py |
| 128 | + INPUT_README-PATH: tests/sample_readme.md |
| 129 | + INPUT_CLAUDE_API_KEY: ${{ secrets.CLAUDE_API_KEY }} |
| 130 | + INPUT_GEMINI-API-KEY: ${{ secrets.GOOGLE_API_KEY }} |
| 131 | + INPUT_GROK-API-KEY: ${{ secrets.XAI_API_KEY }} |
| 132 | + INPUT_NVIDIA-API-KEY: ${{ secrets.NVIDIA_NIM_API_KEY }} |
| 133 | + INPUT_PERPLEXITY-API-KEY: ${{ secrets.PERPLEXITY_API_KEY }} |
| 134 | + INPUT_MODEL: ${{ matrix.model }} |
| 135 | + explanation-in: Korean |
| 136 | + fail-expected: True |
| 137 | + run: | |
| 138 | + . .venv/bin/activate |
| 139 | + uv pip list |
| 140 | + python3 entrypoint.py |
| 141 | + timeout-minutes: 5 |
| 142 | + - name: Output and Verify |
| 143 | + run: | |
| 144 | + echo "${{ matrix.model }} ${{ steps.integration.outputs.feedback }}" |
| 145 | + echo "feedback_${{ matrix.model }}=${{ steps.integration.outputs.feedback }}" >> $GITHUB_OUTPUT |
| 146 | + - name: Verify integration test results |
| 147 | + run: | |
| 148 | + . .venv/bin/activate |
| 149 | + uv pip list |
94 | 150 | echo "feedback_${{ matrix.model }}=${{ steps.integration.outputs.feedback }}" >> $GITHUB_OUTPUT |
95 | 151 | python3 -u -m pytest tests/integration.py |
96 | 152 |
|
|
0 commit comments