[FuelPHP]phpunitをインストールしてみる

FuelPHPでは、ユニットテストを走らせます


# oil test --group=App
Tests Running...This may take a few moments.
sh: phpunit: コマンドが見つかりません

と、phpunitが入ってないので入れます。

<環境>
Centos 6.4
FuelPHP 1.7
PHP 5.4.20

composerを使って入れます
FuelPHPのインストールしたディレクトリに移動

composer.jsonに追記します


# vim composer.json
+    "require-dev": {
+        "phpunit/phpunit": "3.7.*"
+    },

入れます


# php composer.phar update

これで、
fuel/vendor/phpunit
などとインストールされるので、パスを通すには

export PATH=$PATH:/var/www/html/(プロジェクト名)/fuel/vendor/bin

として、動くか確認


# phpunit --version
PHPUnit 3.7.28-12-g236f65c by Sebastian Bergmann.

oilコマンドで


# oil test --group=App
Tests Running...This may take a few moments.
PHPUnit 3.7.28-12-g236f65c by Sebastian Bergmann.

Configuration read from /var/www/html/(プロジェクト名)/fuel/core/phpunit.xml

.........

Time: 571 ms, Memory: 14.50Mb

できました
(ユニットテストは書いておいてください)

[FuelPHP]oil refine migrateをやり直したい

FuelPHP 1.6 で
oil refine migrate
をした後、テーブル作り直したいとき

oil refine migrate:down
で直前のmigrateがなかったことに

fuel/app/migrations/001_create_sample.php
とかを修正して

oil refine migrate
でやりなおしが効きます

oil generate コマンドで
テーブルの項目足したり、削ったりできるので
そっちでやる方がいいかもしれません

[linux]フォルダだけ権限を変える

linuxで権限を変えるとき

chmod -R 775 *

なんてしてしまうと、すべてのフォルダとファイルの権限が変わってしまう

find . -type d -exec chmod 775 {} \;

とすれフォルダだけ変えられるが、サブディレクトリまで変わります。

直下だけなら

find . -maxdepth 1 -type d chmod 775 {} \;

これでできました

find: paths must precede expression: と出たら

Centos6で
find . -name *sample*
find: paths must precede expression: ~
のエラーが出た

パスは評価式の前にないといけない..
なってますけど。。

find . -name sample*
とか
find . -name *sample
は問題ない

find . -name “*sample*”
で動きました