Even more fluent eloquent model via magic setters
Now it is possible to use Eloquent's magic setters in chains. For example:
$model->set_foo('foo')->take(10)->set_bar(some_function());
// ...even though setters 'foo' and 'bar' are not defined on the model
This commit is contained in:
@@ -133,6 +133,19 @@ class EloquentTest extends PHPUnit_Framework_TestCase {
|
||||
Model::$accessible = null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Test the Model::__set method allows chaining.
|
||||
*
|
||||
* @group laravel
|
||||
*/
|
||||
public function testAttributeMagicSetterMethodAllowsChaining()
|
||||
{
|
||||
$model = new Model;
|
||||
$this->assertInstanceOf('Model', $model->set_foo('foo'));
|
||||
$model->set_bar('bar')->set_baz('baz');
|
||||
$this->assertEquals(array('foo' => 'foo', 'bar' => 'bar', 'baz' => 'baz'), $model->to_array());
|
||||
}
|
||||
|
||||
/**
|
||||
* Test the Model::__get method.
|
||||
*
|
||||
@@ -288,4 +301,4 @@ class EloquentTest extends PHPUnit_Framework_TestCase {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user