Example #1
0
 /**
  * Get the hydrated models without eager loading.
  *
  * @param  array  $columns
  * @return array
  */
 public function getModels($columns = array())
 {
     // First, we will simply get the raw results from the query builders which we
     // can use to populate an array with models. We will pass columns
     // that should be selected as well, which are typically just everything.
     $results = $this->query->get($columns);
     if ($this->total) {
         $this->total = $results->countAll();
     }
     $connection = $this->model->getConnectionName();
     $models = array();
     // Once we have the results, we can spin through them and instantiate a fresh
     // model instance for each records we retrieved from the database. We will
     // also set the proper connection name for the model after we create it.
     foreach ($results as $result) {
         $models[] = $model = $this->model->newFromBuilder($result);
         $model->setConnection($connection);
     }
     return $models;
 }
 public function testDateTimeAttributesReturnNullIfSetToNull()
 {
     $timestamps = array('created_at' => new DateTime(), 'updated_at' => new DateTime());
     $model = new LMongoDateModelStub();
     LMongo\Eloquent\Model::setConnectionResolver($resolver = m::mock('LMongo\\DatabaseManager'));
     $resolver->shouldReceive('connection')->andReturn($mockConnection = m::mock('StdClass'));
     $instance = $model->newInstance($timestamps);
     $instance->created_at = null;
     $this->assertNull($instance->created_at);
 }