Commit 79b6230a authored by Jens Segers's avatar Jens Segers

Expand test for push/pull

parent 7e8a9cc4
......@@ -449,7 +449,7 @@ abstract class Model extends \Jenssegers\Eloquent\Model {
}
}
$this->attributes[$column] = $current;
$this->attributes[$column] = array_values($current);
$this->syncOriginalAttribute($column);
}
......
......@@ -406,14 +406,28 @@ class ModelTest extends TestCase {
public function testPushPull()
{
$user = User::create(array('name' => 'John Doe', 'tags' => array()));
$user = User::create(array('name' => 'John Doe'));
$user->push('tags', 'tag1');
$user->push('tags', array('tag1', 'tag2'));
$user->push('tags', 'tag2', true);
$result = User::where('_id', $user->_id)->push('tags', 'tag1');
$this->assertEquals(array('tag1', 'tag1', 'tag2'), $user->tags);
$user = User::where('_id', $user->_id)->first();
$this->assertEquals(array('tag1', 'tag1', 'tag2'), $user->tags);
$this->assertTrue(is_int($result));
$this->assertTrue(is_array($user->tags));
$this->assertEquals(1, count($user->tags));
$user->pull('tags', 'tag1');
$this->assertEquals(array('tag2'), $user->tags);
$user = User::where('_id', $user->_id)->first();
$this->assertEquals(array('tag2'), $user->tags);
$user->push('tags', 'tag3');
$user->pull('tags', array('tag2', 'tag3'));
$this->assertEquals(array(), $user->tags);
$user = User::where('_id', $user->_id)->first();
$this->assertEquals(array(), $user->tags);
}
public function testRaw()
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment