public function testGetByType()
 {
     $connection = new FauxConnection();
     $connection->setPattern('/type_id([\\s]+?)= [0-9]/us', array(array('file_id' => 1), array('file_id' => 2)));
     $connection->setPattern('/file_id([\\s]+?)= [0-9]/us', array(array('id' => 1, 'name' => 'test', 'extension' => 'jpg', 'fileSize' => 12344, 'createdAt' => strtotime('+1 day'), 'createdBy' => 1, 'updatedAt' => null, 'updatedBy' => null, 'deletedAt' => null, 'deletedBy' => null), array('id' => 2, 'name' => 'test', 'extension' => 'jpg', 'fileSize' => 12344, 'createdAt' => strtotime('+1 day'), 'createdBy' => 1, 'updatedAt' => null, 'updatedBy' => null, 'deletedAt' => null, 'deletedBy' => null)));
     $loader = new Loader('gb', new Query($connection));
     $getByType = $loader->getByType(1);
     $this->assertTrue(is_array($getByType));
     $this->assertEquals(count($getByType), 2);
     foreach ($getByType as $file) {
         $this->assertTrue($file instanceof File);
     }
 }
 protected function _getChoices()
 {
     static $files;
     if (null === $files) {
         $files = $this->_loader->getAll();
     }
     if (!$files) {
         $files = [];
         return $files;
     }
     $choices = [];
     foreach ($files as $file) {
         if ($this->_allowedTypes) {
             if (!in_array($file->typeID, $this->_allowedTypes)) {
                 continue;
             }
         }
         $choices[$file->id] = $file->name;
     }
     asort($choices);
     return $choices;
 }