Posts tagged class
CakePHP1.2 SimpleTest のテストケースをまとめて実行する
1ある程度テストケースが増えてくるといちいち App Test Cases からひとつづつテストを実行するのは面倒です。そこでグループ化してまとめてテストケースを実行する方法です。
テストケースのグループ化
app/tests/groups 以下に GroupTest を継承したクラスを作成する。
GroupTest を継承したクラスのファイル名は hoge.group.php のように .group.php を付ける。
まとめる対象はディレクトリかファイルを指定できる。
(続きを読む…)
CakePHP1.2 SimpleTest でコントローラのテストケースを作成
1CakePHP1.2 SimpleTest でテストケースを作成する ではモデルのテストケースを作成したので今度はコントローラのテストケースを作成してみました。
コントローラのテストケースは app/tests/case/conrollers 以下に作成します。
app/tests/case/conrollers/user_controller.test.php
<?php class UsersControllerTestCase extends CakeTestCase { function testIndexTitle() { $result = $this->testAction('/users/index', array('return'=>'render')); $this->assertPattern("/<title>TITLE<\/title>/", $result); } function testIndexSet() { $result = $this->testAction('/users/index', array('return'=>'vars')); $this->assertTrue(isset($result["users"])); } } ?>
jQuery でクッキーを扱う方法
1jQuery でクッキーを扱うのを下記サイトを参考にやってみました。
javascriptライブラリjQueryでcookieを超簡単に扱う方法 : 4GALAXYのメモ
Klaus Hartl – Stilbüro : Cookie Plugin for jQuery
jquery.cookie.js の準備
jquery.cookie.js をダウンロードして HTML で使えるようにします。
<script type="text/javascript" src="jquery.cookie.js"></script>
CakePHP1.2 で XML を配列として扱う方法
2CakePHP1.2 で XML を配列として扱う方法です。
XML を string として保持している場合
uses('Xml'); $file = file_get_contents('/path/to/xml_file'); $xml = new XML($file); $xml_array = Set::reverse($xml);
CakePHP1.2 モデルのデータをオブジェクトで扱う
0少し前ですが下記の投稿を読んでちょっと興味があり色々と試してみました。
“取得データを配列からオブジェクトに変換” フォーラム – CakePHP Users in Japan
I want objects, not arrays! ? nuts and bolts of cakephp
モデルに下記のようなコードを書けばデータを取得するとオブジェクトとして扱えるということです。
function afterFind($results, $primary = false) { if($primary == true && !is_object($results)) { return Set::map($results); } }
CakePHP1.2 SimpleTest でテストケースを作成する
6CakePHP1.2 に SimpleTest をインストール で SimpleTest をインストールするところまでやったので、今度は実際にテストケースを作成してみます。
空のテストケースを作成する
app/test/cases/models に user.test.php を作成して以下のコードで保存する。
<?php class UserTest extends User { } ?>
CakePHP1.2 で追加されるコンポーネントの3つのコールバック関数
1New callback methods for components – cakebaker によると次にリリースされる CakePHP1.2 ではコンポーネントに3つのコールバック関数が追加されるようです。
beforeRender()
view のレンダリングの前、コントローラの beforeRender() メソッドの後に呼ばれる。
public function beforeRender($controller) { }
ソフトバンク携帯の一部端末で HTML の解釈がおかしくないか?
1ソフトバンク携帯の一部機種でおかしな現象が起きています。
<font color="#ff0000"> <input name="hoge" type="text" value="あいうえお"> </font>
というような HTML を表示すると value 属性の「あいうえお」という文字が赤くなる。
これが困るのが背景色を黒とかにして、文字色を白にしているような場合、フォームのテキスト入力エリアは背景が白なのでそこに表示される文字も白になり一見なにも表示されていないようになってしまいます。
(続きを読む…)