Skip to content

テストケース #3

@dotani1111

Description

@dotani1111

StockAlertMail プラグイン テストケース一覧

合計: 18テストケース(3テストクラス)


StockAlertCommandTest(9テスト)

在庫アラートコマンド(eccube:plugin:stock-alert-mail)の動作検証。

# メソッド名 概要 検証内容
1 testCommandSuccessNoAlert アラート対象なしで正常終了 閾値-1で対象商品なし → exit code 0
2 testNoDuplicateSend 重複送信防止 2回実行してもログ数が増えないこと
3 testMailSentWhenLowStock 在庫低下時にメール送信 メール1通送信、件名に「在庫アラート通知」、宛先が BaseInfo.email01
4 testNoMailWhenNoLowStock 在庫十分な場合メール未送信 閾値-1で商品作成 → メール0通
5 testStockRecoveryResetsLog 在庫回復でログリセット 閾値-1に変更後、送信済みログが削除されること
6 testMailSubjectFormat 件名フォーマット [ショップ名] 在庫アラート通知 形式であること
7 testMailSubjectFallbackWhenEmpty 空白件名のフォールバック MailTemplate の件名が空白のみ → デフォルト「在庫アラート通知」に戻ること
8 testMailBodyFromDefaultTemplate デフォルトテンプレートで本文生成 本文が null でないこと、「管理者様」「在庫」を含むこと

PluginManagerTest(8テスト)

プラグインライフサイクル(install / enable / disable / uninstall)の動作検証。

# メソッド名 概要 検証内容
1 testEnable enable 時に初期設定作成 threshold=5 の設定が作成されること
2 testEnableSkipsIfConfigExists 既存設定の上書き防止 threshold=99 の設定がそのまま保持されること
3 testUninstall アンインストールでテーブル削除 plg_stock_alert_config / plg_stock_alert_log テーブルが削除されること
4 testInstall インストール時にエラーなし テーブルが存在すること
5 testDisable disable 時に設定保持 threshold=42 が変更されないこと
6 testUninstallThenReinstall アンインストール → 再インストール テーブル再作成後に enable 可能、threshold=5 で初期化
7 testEnableRestoresMissingTwigTemplate Twig ファイル欠損時の自己修復 DB 行あり・ファイル欠損の半壊状態で enable → ファイル復元

StockAlertLogControllerTest(3テスト)

管理画面の送信履歴ページの表示検証。

# メソッド名 概要 検証内容
1 testIndex 送信履歴ページ表示 HTTP レスポンスが 200
2 testIndexShowsEmptyMessage ログなし時の空メッセージ 「送信履歴はありません」が表示されること
3 testIndexShowsLogs ログあり時の商品名表示 テーブルに商品名が含まれること

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions