9 Commits
Author SHA1 Message Date
Taremin 6dc652fd47 chore: ComfyUIレガシーUI(V1)対応コードの削除とテストコードの整理
ComfyUI v0.2.0以降の新フロントエンド(V2 UI)の標準化に伴い、不要となった古いレガシーUI(V1)向けの実装やテストコードの検証、曖昧な「V2」表記のコメントをクリーンアップ。

- 設定画面内のカスタム項目(プリセット管理ボタンやCSV一覧)のDOM存在検証を削除
- それに伴う不要なUserWarning警告処理を廃止
- 設定ダイアログを開くテストヘルパーからV1向けのID探索やモーダル消去処理を削除
- ソースコードおよびテストコードのコメントから曖昧な「V2」「V2 UI」といった表記を具体的な「ComfyUI設定画面」や「ダイアログ」などの表現に修正
- テストコード内の不要になった項目番号コメント(「3. 」など)の修正
2026-07-13 22:32:09 +09:00
Taremin ad890c58fb test: E2Eテスト用サーバー起動処理の効率化とエンコーディング修正
複数バージョンのテスト実行時におけるComfyUIサーバーの無駄な再起動を削減し、Windows日本語環境でのログ出力による警告を解消。

- comfyui_server フィクスチャのスコープを module から session に変更
- 同一のテストバージョン間ですべてのテストファイルが同じサーバーを再利用するよう改善
- subprocess.Popen と log_file に errors="replace" を追加し UnicodeDecodeError 警告を解消
2026-07-13 21:40:43 +09:00
Taremin 26e910b4f1 chore(test): ComfyUIの複数バージョン自動検証基盤の導入とテスト安定化
テスト時に指定された複数のComfyUIバージョンを自動ダウンロードし、最適な仮想環境を構築した上でテストを実行する仕組みを導入。また、Playwright同期APIに起因するデッドロックやキャッシュ汚染によるテストのハングアップ問題を解消。

- 設定ファイルで複数バージョンの定義をサポート
- 該当するComfyUIおよびEmbeddable Pythonを自動取得するdownloaderモジュールを追加
- pytest_generate_testsによりバージョン別のテストを動的にパラメータ化
- min_comfy_versionマーカーによるバージョン制限テストの条件付きスキップをサポート
- Windows環境でのゾンビプロセス防止のためtaskkillによる強制終了処理を追加
- バージョン切り替え時のブラウザキャッシュ汚染を防ぐためキャッシュを無効化
- Playwright同期APIのダイアログ処理をJavaScript側でのモック化へ移行しデッドロックを回避
- 設定画面でのCSVトグル描画有無によるテストアプローチの動的切り替えを実装
- リサイズ操作のsteps指定など各種タイミング競合とタイムアウト処理を強化
2026-07-13 21:13:11 +09:00
Taremin be180dd52c refactor: JsonFilterノードのUIをPreactへ移行
- JsonFilterノードのフィルタールール編集UIをPreactへ移行し、入力フォーカス消失問題を解消
- useFilterStoreカスタムフックによる状態購読処理を追加
- FilterUIコンポーネントによるUIのJSX化およびドラッグ&ドロップによる並べ替えを実装
- LiteGraphキャンバスとのイベント干渉を防ぐイベント絶縁処理を移植
- filter_widget.tsのVanilla DOM操作をPreactマウント処理へ置換
- E2Eテストサーバーの起動タイムアウトを120秒から300秒に延長し、テスト実行を安定化
2026-05-23 14:48:05 +09:00
Taremin 7b1ebac3ed refactor(e2e & core): E2Eテストの安定性向上およびMonaco初期化競合・コンテキスト追跡の修正
- src/:
  - Monaco言語サービス (CompletionItemProvider 等) をシングルトン構造として登録・管理し、設定変更時にインスタンス間でリスナーが重複・競合しないようにリファクタリング。
  - 非同期な初期化時のタイミング問題を回避するため、コンテキストキーの保持方法や再接続ロジックを最適化。
- tests/:
  - Playwrightの固定待機 (wait_for_timeout) を削減し、動的な可視性チェック (wait_for(state="attached")) や evaluate を用いたDOM操作へ移行。
  - テスト間のコンフリクトを回避するため、テスト用CSVの動的生成 (UUID利用) を導入。
  - test_multitext_autocomplete.py 等で、設定ダイアログ操作やページリロードを含めた本来の永続化テストシナリオが安定稼働するよう再構築。
2026-03-27 13:30:51 +09:00
Taremin f84fea75b6 refactor: テストディレクトリの構成整理とプリセット機能のモジュール化
- テストファイルを e2e, unit, debug などのカテゴリ別ディレクトリに移動し、構成を整理
- 不要な一時デバッグ用スクリプトを削除し、テスト環境をクリーンアップ
- 言語機能やプリセット定義を src/languages/ ディレクトリに分離・モジュール化
- 言語プリセット管理ダイアログ (preset_dialog.ts) の追加と関連スタイルの更新
- __init__.py での MultiText ノード入力値パース処理を堅牢化 (リスト入力や不正JSONへの対応)
- .gitignore に .agents および debug_dumps の除外設定を追加
2026-03-18 19:37:00 +09:00
Taremin 508707cd15 fix: E2Eテストの安定化および初期化時のTypeError修正
- src/completion.ts, src/index.ts, src/comfyui/index.ts: 未定義値に対する操作や不適切なプロパティアクセスによる TypeError を防ぐガードを追加
- __init__.py: MultiText ノードに非JSON入力があった際のフォールバック処理を追加し、JsonFilter でのパースエラー時に詳細ログを出力するように改善
- tests/test_multitext_output.py: フロントエンドの同期遅延問題を回避するため、ノード内部のデータ構造を操作して標準の app.queuePrompt() を呼び出す堅牢な実装に刷新
- tests/conftest.py, tests/test_multitext_features.py: テスト実行の安定性と一貫性を高めるための微調整
- 全27件のE2Eテストが正常にパスすることを確認済み
2026-03-04 16:31:58 +09:00
Taremin fa9abb3d13 feat: MultiTextウィジェットの実装およびE2Eテストの安定化(リロード対応含む)
- __init__.py: WebuiMonacoPromptMultiTextノードのデータ処理ロジックを改善
- src/comfyui/widget/multitext_widget.ts: 新規ウィジェット実装。Monaco Editorの初期化とリロード時の自動復旧に対応
- src/comfyui/widget/index.ts: MultiTextWidgetをエクスポート
- src/comfyui/widget/find_widget.ts: 検索UIの調整
- tests/conftest.py: ComfyUI起動待ちなどの共通ヘルパーをフィクスチャ化
- tests/pytest.ini: ログレベル出力を調整
- tests/test_e2e.py: ページリロード時のMonaco Editorの状態復元を検証するテストを追加
- tests/test_multitext_search*.py, test_multitext_tab.py: MultiTextウィジェット向けの新規テスト群を追加
2026-02-22 22:52:27 +09:00
Taremin d535bd67fa test: E2Eテストの実装
- .gitignore を更新し、テスト関連の出力や設定ファイル (tests/test_settings.json, tests/*.html, tests/*.png など) をGitの管理対象外に設定
- E2Eテスト実装スクリプト (tests/test_e2e.py, tests/conftest.py, tests/pytest.ini, tests/test_settings.json.example) をリポジトリに追加
2026-02-21 04:32:37 +09:00