예제 #1
0
 public function testToArrayDeep()
 {
     $louise = new UserUnit($this->getUserData(array('_id' => new MongoId('51b14c2de8e185801f000001'), 'name' => 'Louise', 'email' => '*****@*****.**')));
     $neil = new UserUnit($this->getUserData(array('_id' => new MongoId('51b14c2de8e185801f000001'), 'name' => 'Neil', 'email' => '*****@*****.**', 'friend' => $louise)));
     $martyn = new UserUnit($this->getUserData(array('friend' => $neil)));
     $this->connectionMock->method('findOne')->willReturn(array('name' => 'Neil'));
     $toArray = $martyn->toArray(1);
     // assertions
     $this->assertEquals('...', $toArray['friend']['friend']);
 }
예제 #2
0
 public function testToArrayWithArray()
 {
     $id = new \MongoId('51b14c2de8e185801f000000');
     $dbref = \MongoDBRef::create('users', '51b14c2de8e185801f000001');
     $user = new UserUnit(array('name' => 'Martyn'));
     $article = new ArticleUnit(array('title' => 'My article'));
     $values = array('friend' => array('Monty', $id, $dbref, $user), 'article' => $article, 'articles' => array($article));
     $this->connectionMock->method('findOne')->willReturn(array('name' => 'Neil'));
     $user = new UserUnit($values);
     $toArray = $user->toArray(2);
     // assertions
     $this->assertEquals('Monty', $toArray['friend'][0]);
     $this->assertEquals('51b14c2de8e185801f000000', $toArray['friend'][1]);
     $this->assertEquals('Neil', $toArray['friend'][2]['name']);
     $this->assertEquals('Martyn', $toArray['friend'][3]['name']);
     $this->assertEquals('My article', $toArray['article']['title']);
     $this->assertEquals('My article', $toArray['articles'][0]['title']);
 }