/**
  * Extract skin information from an array.
  *
  * @param array $params
  * @return Skin
  */
 public static function extract($params)
 {
     $skin = parent::extractExtensible($params, new Skin());
     /**
      * @var $skin Skin
      */
     $skin->setName($params['name']);
     return $skin;
 }
 /**
  * Extract animation information from an array.
  *
  * @param array $params
  * @internal $animation Animation
  * @return Animation
  */
 public static function extract($params)
 {
     $animation = parent::extractExtensible($params, new Animation());
     /**
      * @var $animation Animation
      */
     $animation->setCommand(isset($params['command']) ? $params['command'] : null);
     return $animation;
 }
 /**
  * @param $mockData
  * @param $instance
  * @dataProvider extractDataProvider
  */
 public function testExtractExtensible($mockData, $instance = null)
 {
     $result = ResourceParsingService::extractExtensible($mockData, $instance);
     if (is_null($instance)) {
         $this->assertInstanceOf('\\petrepatrasc\\BlizzardApiBundle\\Entity\\Reward\\Resource', $result);
     }
     $this->assertEquals($mockData['title'], $result->getTitle());
     $this->assertEquals($mockData['id'], $result->getId());
     $this->assertEquals($mockData['achievementId'], $result->getAchievementId());
     $this->assertEquals($mockData['icon']['x'], $result->getIcon()->getXCoordinate());
     $this->assertEquals($mockData['icon']['y'], $result->getIcon()->getYCoordinate());
     $this->assertEquals($mockData['icon']['w'], $result->getIcon()->getWidth());
     $this->assertEquals($mockData['icon']['h'], $result->getIcon()->getHeight());
     $this->assertEquals($mockData['icon']['offset'], $result->getIcon()->getOffset());
     $this->assertEquals($mockData['icon']['url'], $result->getIcon()->getUrl());
 }
 /**
  * Extract decal information from an array.
  *
  * @param array $params
  * @return Decal
  */
 public static function extract($params)
 {
     $decal = parent::extractExtensible($params, new Decal());
     return $decal;
 }