CakePHP 2.x メール送信内容のテストを行う

テストでメールを送信せずに、CakeEmailでのレンダリング内容を取りたい場合は、 // モックを作成 $CakeEmail = $this->getMock('CakeEmail', array('transportClass')); $CakeEmail->expects($this->any())->method('transportClass') ->will($this->returnValue(new DebugTransport())); // CakeEmailのMockをセット $TestTarget->CakeEmail = $CakeEmail; // ... $TestTargetを使った何らかのメール送信を含む処理 // text形式のメッセージを取得 $bodyText = $CakeEmail->message(CakeEmail::MESSAGE_TEXT); // html形式のメッセージを取得 $bodyHtml = $CakeEmail->message(CakeEmail::MESSAGE_HTML); // ... 適宜、値チェック てな感じで、CakeEmail::transportClass()をスタブ化してDebugTransportを返すようにする。で、CakeEmail::message()でbodyを取得する。 ...

2014年4月19日 · nojimage

NetBeansでリモートマシンのphpunitを実行する

最近の開発ではローカルマシン上ではなく、Vagrant等を利用しての仮想環境を用いた開発が主流となってきました。そこで、NetBeansからテストをリモートマシン上で実行し、結果を取得するスクリプトを紹介します。 ...

2014年4月14日 · nojimage

Facebook Grapth APIのレスポンスからReason-Phraseがなくなっていた(CakePHPの場合)

3/13 - 14にかけて、graph.facebook.comがアップデートされたようで、レスポンスのStatus-LineにReason-Phraseが含まれなくなっていました。 ...

2014年3月20日 · nojimage

TLDを取得するクローラーを書いてみた

トップレベルドメインの判別をするコードがあるのですが、ドメインが増えたときにいちいちチェックするのも面倒なので、チェック用の正規表現を書き出すクローラースクリプトを書きました。 ...

2014年3月1日 · nojimage

CakePHPで環境に応じた設定ファイルを読み込むためのプラグイン

nojimage/cakephp-environment 環境に応じた設定を行うためのプラグインを公開しています。 環境はファイルベースで判別するので、開発環境と本番環境の切り替えをスムーズに行うことができます。 ...

2014年2月12日 · nojimage

CakePHP 2.xをComposerでインストールする

CakePHP 3.xではComposerが正式にサポートされますが、2.xでもComposerを使ってCaekPHPのコアを管理することができます。 ...

2014年2月8日 · nojimage

CakePHP Hash::combine() でキーと値の組み合わせがずれる

CakePHP 2.2以降で利用できるHashクラスのcombineメソッドには以下の罠があります。 Code: < ?php $data = [ [ 'id' => 1, 'title' => 'first title', 'body' => 'first content' ], [ 'id' => 3, 'title' => 'second title', 'body' => 'second content', 'more' => 'second more content' ], [ 'id' => 5, 'title' => 'third title', 'body' => 'third content', 'more' => 'third more content' ], ]; $results = Hash::combine($data, '{n}.id', '{n}.more'); この場合、$resultsは以下の値になることを期待するでしょう。 ...

2013年12月18日 · nojimage

CakePHPのCookieComponent::writeのencryptがデフォルトでは暗号になってない件

正しいタイトル→ CakePHPのCookieComponent::writeのencryptがデフォルトでは暗号になってない件 ですね / “PHP はいつもわたしに新鮮な驚きを与えてくれる - 猫型の蓄音機は 1 分間に 45…” http://t.co/UkWZCHbtGN — Hisateru Tanaka (@tanakahisateru) 2013, 12月 11 ...

2013年12月12日 · nojimage

CakeEmailのメールアドレスチェックを回避する

この記事はCakePHP2以降、2.4.0までを対象とした記事です。 CakePHP2からCakeEmailクラスにおいて、メールアドレスのセット時にValidation::email()を用いた検証が行われるようになりました。 ...

2013年7月12日 · nojimage

CakePHP 2.2のHash::extract()はCentOS5/RHEL5系では使えない

先日CakePHPのバグレポートをしたのでご報告。 #3821 Hash::extract() not working on CentOS 5 - CakePHP - cakephp ※この話はCakePHP2.2 - 2.3.4までが該当します。次バージョン(2.3.5)以降は修正が適用されるため大丈夫です。 ...

2013年5月10日 · nojimage