-
Notifications
You must be signed in to change notification settings - Fork 48
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #136 from dai-motoki/release/v0.1.29
Release/v0.1.29
- Loading branch information
Showing
10 changed files
with
413 additions
and
4 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,86 @@ | ||
|
||
|
||
name: PyPI Package CI/CD # PyPIパッケージのCI/CDワークフロー名 | ||
|
||
on: # トリガーの設定 | ||
push: # - プッシュイベントの場合 | ||
branches: # -- 対象ブランチ | ||
- main # --- mainブランチ | ||
- "release/**" # --- releaseで始まるブランチ | ||
pull_request: # - プルリクエストイベントの場合 | ||
branches: # -- 対象ブランチ | ||
- main # --- mainブランチ | ||
- "release/**" # --- releaseで始まるブランチ | ||
|
||
jobs: # ジョブの定義 | ||
test: # テストジョブ | ||
runs-on: ubuntu-latest # - Ubuntu最新版で実行 | ||
strategy: | ||
matrix: | ||
python-version: [3.7, 3.8, 3.9, "3.10", "3.11"] # 複数のPythonバージョン(3.7〜3.11)でテストを実行 | ||
steps: # - ステップの定義 | ||
- uses: actions/checkout@v2 # -- リポジトリのチェックアウト(v2) | ||
- name: Set up Python ${{ matrix.python-version }} # -- 指定したバージョンのPythonをセットアップ | ||
uses: actions/setup-python@v2 # --- Python環境のセットアップ(v2) | ||
with: # --- オプション | ||
python-version: ${{ matrix.python-version }} # ---- マトリクスで指定したPythonバージョンを使用 | ||
- name: Install dependencies # -- 依存関係のインストール | ||
run: | # --- 以下のコマンドを実行 | ||
python -m pip install --upgrade pip # ---- pipのアップグレード | ||
pip install -e . # ---- 現在のディレクトリを編集可能モードでインストール | ||
- name: Run tests # -- テストの実行 | ||
run: | # --- 以下のコマンドを実行 | ||
pip install pytest # ---- pytestをインストール | ||
- name: Run test_sample.py # -- test_sample.pyの実行 | ||
run: | # --- 以下のコマンドを実行 | ||
pytest tests/test_sample.py # ---- test_sample.pyをpytestで実行 | ||
- name: Run test_llms.py # -- test_llms.pyの実行 | ||
env: # --- 環境変数の設定 | ||
ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }} # ---- AnthropicのAPIキー(シークレットから取得) | ||
run: | # --- 以下のコマンドを実行 | ||
pytest tests/test_llms.py -s # ---- test_llms.pyをpytestで実行 | ||
- name: Run test_minimal.py # -- test_minimal.pyの実行 | ||
run: | # --- 以下のコマンドを実行 | ||
pytest tests/test_minimal.py -s # ---- test_minimal.pyをpytestで実行し、print内容を出力 | ||
# - name: Run test_sample.py # -- test_sample.pyの実行 | ||
# if: matrix.python-version == '3.11' # --- Python 3.11の場合のみ実行 | ||
# run: | # --- 以下のコマンドを実行 | ||
# pytest tests/test_sample.py # ---- test_sample.pyをpytestで実行 | ||
# - name: Run test_cli.py # -- test_cli.pyの実行 | ||
# if: matrix.python-version == '3.11' # --- Python 3.11の場合のみ実行 | ||
# run: | # --- 以下のコマンドを実行 | ||
# pytest tests/test_cli.py # ---- test_cli.pyをpytestで実行 | ||
# - name: Run test_converter.py # -- test_converter.pyの実行 | ||
# if: matrix.python-version == '3.11' # --- Python 3.11の場合のみ実行 | ||
# run: | # --- 以下のコマンドを実行 | ||
# pytest tests/test_converter.py # ---- test_converter.pyをpytestで実行 | ||
deploy: # デプロイジョブ | ||
needs: test # - テストジョブが成功した後に実行 | ||
runs-on: ubuntu-latest # - Ubuntu最新版で実行 | ||
if: github.event_name == 'push' && startsWith(github.ref, 'refs/heads/release/') # - releaseブランチへのプッシュ時のみ実行 | ||
steps: # - ステップの定義 | ||
- uses: actions/checkout@v2 # -- リポジトリのチェックアウト(v2) | ||
- name: Set up Python # -- Pythonのセットアップ | ||
uses: actions/setup-python@v2 # --- Python環境のセットアップ(v2) | ||
with: # --- オプション | ||
python-version: 3.10 # ---- Python 3.8を使用 | ||
- name: Install dependencies # -- 依存関係のインストール | ||
run: | # --- 以下のコマンドを実行 | ||
python -m pip install --upgrade pip # ---- pipのアップグレード | ||
pip install -e . # ---- 現在のディレクトリを編集可能モードでインストール | ||
- name: Update version and upload to PyPI # -- バージョンの更新とPyPIへのアップロード | ||
env: # --- 環境変数の設定 | ||
PYPI_USERNAME: ${{ secrets.PYPI_USERNAME }} # ---- PyPIユーザー名(シークレットから取得) | ||
PYPI_PASSWORD: ${{ secrets.PYPI_PASSWORD }} # ---- PyPIパスワード(シークレットから取得) | ||
run: | # --- 以下のコマンドを実行 | ||
chmod +x update_and_upload.sh # ---- update_and_upload.shに実行権限を付与 | ||
./update_and_upload.sh # ---- update_and_upload.shを実行 | ||
- name: Merge release branch to main # -- リリースブランチをmainブランチにマージ | ||
uses: devmasx/merge-branch@v1.3.1 # --- merge-branchアクションを使用(v1.3.1) | ||
with: # --- オプション | ||
type: now # ---- 即時マージ | ||
from_branch: ${{ github.ref }} # ---- マージ元ブランチ(現在のブランチ) | ||
target_branch: main # ---- マージ先ブランチ(mainブランチ) | ||
github_token: ${{ secrets.GITHUB_TOKEN }} # ---- GitHubトークン(シークレットから取得) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
import zoltraak.llms.claude as claude | ||
|
||
def test_generate_response(): | ||
""" | ||
generate_response関数のテスト | ||
""" | ||
model = "claude-3-haiku-20240307" | ||
prompt = "今日の晩御飯を提案して" | ||
max_tokens = 100 | ||
temperature = 0.8 | ||
|
||
response = claude.generate_response(model, prompt, max_tokens, temperature) | ||
|
||
# レスポンスが文字列であることを確認 | ||
assert isinstance(response, str) | ||
|
||
|
||
# レスポンスが空でないことを確認 | ||
assert response.strip() != "" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
import unittest | ||
import subprocess | ||
|
||
class MinimumTestCase(unittest.TestCase): | ||
def test_zoltraak_only(self): | ||
""" | ||
zoltraakコマンドをmdファイルの引数なしで実行した場合、正しいエラーメッセージが表示されることを確認します。 | ||
実行例: `zoltraak` コマンドを引数なしで実行した場合、"エラー: 入力ファイルまたはテキストが指定されていません。"というエラーメッセージが表示されるべきです。 | ||
""" | ||
result = subprocess.run(['zoltraak'], capture_output=True, text=True) # zoltraakコマンドを引数なしで実行し、その結果をresultに格納します。 | ||
print("STDOUT:", result.stdout) # 標準出力の内容を出力 | ||
print("STDERR:", result.stderr) # 標準エラーの内容を出力 | ||
self.assertIn("エラー: 入力ファイルまたはテキストが指定されていません。", result.stdout) # エラーメッセージは標準エラー出力に含まれているはずなので、result.stderrをチェックするように修正 | ||
|
||
# def test_zoltraak_with_compiler(self): | ||
# """zoltraak "〜したい" -cコマンドのテスト""" | ||
# result = subprocess.run(["zoltraak", "テストしたい", "-c", "コンパイラ"], capture_output=True, text=True) | ||
# self.assertEqual(result.returncode, 0) | ||
# self.assertIn("コンパイル結果", result.stdout) | ||
|
||
# def test_zoltraak_without_compiler(self): | ||
# """zoltraak "〜したい" -cコマンド(コンパイラなし)のテスト""" | ||
# result = subprocess.run(["zoltraak", "テストしたい", "-c"], capture_output=True, text=True) | ||
# self.assertNotEqual(result.returncode, 0) | ||
# self.assertIn("エラー: 入力ファイルまたはテキストが指定されていません。", result.stderr) | ||
|
||
# def test_zoltraak_with_custom_compiler(self): | ||
# """zoltraak "〜したい" -cc自作コンパイラのテスト""" | ||
# result = subprocess.run(["zoltraak", "テストしたい", "-cc", "自作コンパイラ"], capture_output=True, text=True) | ||
# self.assertEqual(result.returncode, 0) | ||
# self.assertIn("自作コンパイラの結果", result.stdout) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
def test_example(): | ||
assert True |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.