laravel phpunit phpunit


public function testNewUserRegistration()
{
$this->visit( /register )
->type( Taylor name )
->check( terms )
->press( Register )
->seePageIs( /dashboard );
}


メソッド 説明
$this->type($text $elementName) 指定したフィールドに「タイプ」します。
$this->select($value $elementName) ラジオボタンかドロップダウンフィールドを「選択」します。
$this->check($elementName) チェックボックスフィールドを「チェック」します。
$this->attach($pathToFile $elementName) フォームにファイルを「添付」します。
$this->press($buttonTextOrElementName) 指定したテキストか名前のボタンを「押し」ます。


seeJsonメソッドは渡された配列をJSONに変換します。次にそのJSONが、JSONレスポンス全体のいずれかに現れるかを確認します。ですから、他のプロパティーがJSONレスポンスに含まれていたとしても、指定した部分が存在する限り、テストはパスします。

JSONと一致するか確実に検証
指定した配列がアプリケーションから返されるJSONと完全に一致するかを確認したい場合は、seeJsonEqualsメソッドを使用してください。

<?php

class ExampleTest extends TestCase
&#123;
/**
* 基本的な機能テストの例
*
* @return void
*/
public function testBasicExample()
&#123;
&#36;this->post( /user [ name => Sally ])
->seeJsonEquals([
created => true
]);
&#125;
&#125;

カスタムHTTPリクエスト
アプリケーションに対してカスタムHTTPリクエストを作成し、
完全なIlluminate&yen;Http&yen;Responseオブジェクトを取得したい場合は、callメソッドを使ってください。

public function testApplication()
&#123;
&#36;response = &#36;this->call( GET / );

&#36;this->assertEquals(200 &#36;response->status());
&#125;


laravel input と request の違い

フォームから一つの値を取得するにはInput::get()メソッドを使用します。



Blade操作|データ表示
&#123;&#123; &#125;&#125;文は、XSS対策としてエスケープしてくれます。
1
&#123;&#123; &#36;name &#125;&#125;
&#123;!! !!&#125;文は、エスケープしません。

1
&#123;!! &#36;name !!&#125;



CSRF対策
csrf_field関数を使うと、CSRF対策用のトークン値を持つフィールドを生成してくれます。
<form method= POST action= &#123;&#123; url( login ) &#125;&#125; >
&#123;&#123; csrf_field() &#125;&#125;
</form>
「VerifyCsrfTokenミドルウェア」にて、「リクエストのトークン」と「セッションのトークン」が一致するかチェックしてくれます。


configヘルパー関数でconfigデータを取得できます。
&#36;value = config( app.timezone );
// デフォルト値指定
&#36;value = config( app.timezone &#36;default);
http://www.dn-web64.com/archives/web/laravel-cheat/
http://qiita.com/k-okada/items/c92a3f3594d751d42740