Commit fa36390b authored by Jens Segers's avatar Jens Segers

Added tests and fixed broken build

parent 318d0034
......@@ -176,15 +176,4 @@ abstract class Model extends \Illuminate\Database\Eloquent\Model {
return parent::newBaseQueryBuilder();
}
/**
* Create a new Eloquent query builder for the model.
*
* @param \Jenssegers\Mongodb\Query\Builder $query
* @return \Jenssegers\Mongodb\Eloquent\Builder|static
*/
public function newEloquentBuilder($query)
{
return new Builder($query);
}
}
<?php namespace Jenssegers\Eloquent;
<?php namespace Jenssegers\Mongodb\Eloquent;
class Builder extends \Illuminate\Database\Eloquent\Builder {
......
......@@ -5,6 +5,7 @@ use Illuminate\Database\Eloquent\Relations\HasOne;
use Illuminate\Database\Eloquent\Relations\HasMany;
use Jenssegers\Mongodb\DatabaseManager as Resolver;
use Jenssegers\Mongodb\Eloquent\Builder;
use Jenssegers\Mongodb\Query\Builder as QueryBuilder;
use Jenssegers\Mongodb\Relations\BelongsTo;
use Jenssegers\Mongodb\Relations\BelongsToMany;
......@@ -203,6 +204,17 @@ abstract class Model extends \Jenssegers\Eloquent\Model {
return $query = $this->newQuery()->where($this->getKeyName(), $this->getKey())->unset($columns);
}
/**
* Create a new Eloquent query builder for the model.
*
* @param \Jenssegers\Mongodb\Query\Builder $query
* @return \Jenssegers\Mongodb\Eloquent\Builder|static
*/
public function newEloquentBuilder($query)
{
return new Builder($query);
}
/**
* Handle dynamic method calls into the method.
*
......
......@@ -130,10 +130,10 @@ class BelongsToMany extends EloquentBelongsToMany {
$foreignIds = array_pluck($records, $this->foreignKey);
// Attach to the parent model
$parent->push($this->otherKey, $otherIds[0])->update(array());
$parent->push($this->otherKey, $otherIds[0]);
// Attach to the related model
$related->push($this->foreignKey, $foreignIds[0])->update(array());
$related->push($this->foreignKey, $foreignIds[0]);
}
/**
......
......@@ -332,4 +332,16 @@ class ModelTest extends PHPUnit_Framework_TestCase {
$this->assertNotEquals($user->id, $user->_id);
}
public function testPushPull()
{
$user = User::create(array('name' => 'John Doe', 'tags' => array()));
$result = User::where('_id', $user->_id)->push('tags', 'tag1');
$user = User::where('_id', $user->_id)->first();
#$this->assertTrue(is_int($result));
$this->assertTrue(is_array($user->tags));
$this->assertEquals(1, count($user->tags));
}
}
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