Exemplo n.º 1
0
 /**
  * @param string $currentUserId
  * @return IAccount[]
  */
 public function findByUserId($currentUserId)
 {
     $accounts = $this->mapper->findByUserId($currentUserId);
     $accounts = array_map(function ($a) {
         return new Account($a);
     }, $accounts);
     if (count($accounts) > 1) {
         $unifiedAccount = $this->buildUnifiedAccount($currentUserId);
         $accounts = array_merge([$unifiedAccount], $accounts);
     }
     return $accounts;
 }
Exemplo n.º 2
0
 public function testFind()
 {
     /** @var MailAccount $b */
     $b = $this->mapper->insert($this->account);
     $result = $this->mapper->find($b->getUserId(), $b->getId());
     $this->assertEquals($b->toJson(), $result->toJson());
     $result = $this->mapper->findByUserId($b->getUserId());
     $c = array_filter($result, function ($a) use($b) {
         /** @var MailAccount $a */
         return $a->getId() === $b->getId();
     });
     $c = array_pop($c);
     $this->assertEquals($b->toJson(), $c->toJson());
 }