public function getRecordFields(Record $record, array $fields = null, $locale = null)
 {
     $map = [];
     foreach ($record->getMetadata() as $metadata) {
         if (!$this->fieldsMap->isFieldMapped($metadata->getName(), $locale)) {
             continue;
         }
         $alias = $this->fieldsMap->getAliasFromFieldName($metadata->getName(), $locale);
         if ($fields !== null && !in_array($alias, $fields)) {
             continue;
         }
         $map = $this->appendValueToMap($map, $alias, $metadata->getValue());
     }
     return $map;
 }
 /**
  * @expectedException \OutOfBoundsException
  */
 public function testGetAliasFromUndefinedLocaleThrowsException()
 {
     $map = new FieldMap(['bacon' => ['fr' => 'jambon']]);
     $map->getAliasFromFieldName('ham', 'en');
 }