自分用にインストールしたpearを使おうとしてredeclareみたいに文句言われた場合
丁度ファイル入出力が絡むテストを書いて、めんどくさいなー、と思っていたところに
http://blog.yuyat.jp/archives/1280
↑でvfsStreamというものが紹介されていたので試そうとしたらひっかかったのでメモ。
とりあえずCache_Casualのテストを実行してみる
tests/unit/bootstrap.phpに自分用pearのインクルードパスを追加。
<?php set_include_path('/home/calpo/share/pear/php' . PATH_SEPARATOR . get_include_path());
$ phpunit --bootstrap bootstrap.php Cache/Casual/Container/FileTest.php PHP Fatal error: Cannot redeclare class File_Iterator in /home/calpo/share/pear/php/File/Iterator.php on line 196 Fatal error: Cannot redeclare class File_Iterator in /home/calpo/share/pear/php/File/Iterator.php on line 196
自分用のpearディレクトリは後ろに設定する
<?php // × set_include_path('/home/calpo/share/pear/php' . PATH_SEPARATOR . get_include_path()); // ○ set_include_path(get_include_path() . PATH_SEPARATOR . '/home/calpo/share/pear/php');
実行できるようになった。
$ phpunit --bootstrap bootstrap.php Cache/Casual/Container/FileTest.php PHPUnit 3.5.3 by Sebastian Bergmann. .. Time: 0 seconds, Memory: 5.25Mb OK (2 tests, 2 assertions)