プロジェクト

全般

プロフィール

Bug(バグ) #3391

デフォルトの OpenPNE.yml によって sf_factory_storage が設定されるため、 test 環境用のセッションストレージである sfSessionTestStorage が利用されず、セッションが発行されなくなる

Shinichi Urabe10年以上前に追加. 8年以上前に更新.

ステータス:
Fixed(完了)
優先度:
High(高め)
対象バージョン:
-
開始日:
2013-09-04
期日:
進捗率:

100%

3.6 で発生するか:
Yes (はい)
3.8 で発生するか:
Yes (はい)

説明

現象

セッションを database に保持する設定とした場合、デフォルトの OpenPNE.yml 設定によって sf_factory_storage として opPDODatabaseSessionStorage が設定される。これによって、 factories.yml の設定を変更することなく、このセッションストレージクラスが使用されることになる。

だが、これには、 test 環境でもこのストレージクラスが使用されてしまうという問題がある。 symfony デフォルトの factories.yml においては、 test 環境用の sfSessionTestStorage を使用するような配慮がなされているが、 OpenPNE.yml のデフォルト設定によって無力化してしまう。これによって、

  • 機能テストの出力の存在をストレージクラスが考慮せず、セッションの開始が拒否される
  • セッションの継続ができない

などといった問題が生じる。

原因

バグが発生した原因を記入

修正案

解決策としては「sf_factory_storage の設定内容に応じた test 環境用のラッパークラスを作成する」「test 環境では OpenPNE.yml のセッションストレージの上書きを無効にする」のどちらかを選択することになるが、実装の容易さ等を考慮し、後者を選択することが適当と思われる。

0001-test-factories.yml-refs-1074.patch 表示 (1.59 KB) Shinichi Urabe, 2015-06-19 16:50


関連するチケット

コピー先 OpenPNE 3 - Backport(バックポート) #3813: デフォルトの OpenPNE.yml によって sf_factory_storage が設定されるため、 test 環境用のセッションストレージである sfSessionTestStorage が利用されず、セッションが発行されなくなる Fixed(完了) 2013-09-04
コピー先 OpenPNE 3 - Backport(バックポート) #3814: デフォルトの OpenPNE.yml によって sf_factory_storage が設定されるため、 test 環境用のセッションストレージである sfSessionTestStorage が利用されず、セッションが発行されなくなる Fixed(完了) 2013-09-04

関係しているリビジョン

リビジョン d48f33ce (差分)
Kousuke Ebihara8年以上前に追加

(fixes #3391) In the test environment it was not allowed to override the session storage settings that are defined in the factories.yml

リビジョン efcddf96
Shinichi Urabe8年以上前に追加

Merge pull request #257 from C-nakajima/t-3391

(fixes #3391) In the test environment it was not allowed to override the session storage settings that are defined in the factories.yml

履歴

#1 Shinichi Urabe10年以上前に更新

  • 説明 を更新 (diff)

#2 Shinichi Urabe9年以上前に更新

  • 優先度Normal(通常) から High(高め) に変更

#3 Shinichi Urabeほぼ9年前に更新

修正案を添付しました。以下のコマンドで取り込めます

$ git am -3 0001-test-factories.yml-refs-1074.patch

#4 Chiharu Nakajimaほぼ9年前に更新

  • コピー先 Backport(バックポート) #3813: デフォルトの OpenPNE.yml によって sf_factory_storage が設定されるため、 test 環境用のセッションストレージである sfSessionTestStorage が利用されず、セッションが発行されなくなる を追加

#5 Chiharu Nakajimaほぼ9年前に更新

  • コピー先 Backport(バックポート) #3814: デフォルトの OpenPNE.yml によって sf_factory_storage が設定されるため、 test 環境用のセッションストレージである sfSessionTestStorage が利用されず、セッションが発行されなくなる を追加

#6 Chiharu Nakajima8年以上前に更新

  • ステータスNew(新規) から Pending Review(レビュー待ち) に変更
  • 進捗率0 から 50 に変更

プルリクエストしました。
https://github.com/openpne/OpenPNE3/pull/257

#7 Shinichi Urabe8年以上前に更新

  • ステータスPending Review(レビュー待ち) から Pending Testing(テスト待ち) に変更
  • 進捗率50 から 70 に変更

#8 Shinichi Urabe8年以上前に更新

  • 担当者Chiharu Nakajima にセット

#9 Kousuke Ebihara8年以上前に更新

  • ステータスPending Testing(テスト待ち) から Fixed(完了) に変更
  • 進捗率70 から 100 に変更

更新履歴 d48f33ce9076ec0a5804cf7be6ddcdf7d7b41f15 で適用されました。

他の形式にエクスポート: Atom PDF