タグ

TestingとCacheに関するKenji_sのブックマーク (1)

  • FuelPHPで,リフレクションを使ってOrm\Modelのキャッシュをクリアする - Qiita

    などとすると,テストケースごとにTRUNCATEしているのにテストケースBでModel_Fooのエンティティが取り出されてしまう. この問題に対し,ORMのキャッシュをクリアすることで解決を図った. リフレクションによる解決 Orm\Modelは$_cached_objectsという静的プロパティにオブジェクトをキャッシュしているが, Orm\Modelにはこの変数をクリアするメソッドが提供されていない. http://tech.respect-pal.jp/fuelphp-orm-cache/ ではOrm\Modelを継承した独自クラスを作り,$_cached_objectsをクリアするメソッドを追加して解決している. しかし,既に多くのクラスがOrm\Modelを継承するようになっているのを,独自クラスを継承するよう書きなおすのはしたくなかったので, (テストでのみ利用される独自クラス

    FuelPHPで,リフレクションを使ってOrm\Modelのキャッシュをクリアする - Qiita
  • 1