/** * @test */ public function itShouldSerializeWithLegalObject() { $serialized = $this->serializer->serialize($this->getValidObject()); $this->assertEquals($this->width, $serialized->w); $this->assertEquals($this->height, $serialized->h); $this->assertEquals($this->resize, $serialized->resize); }
/** * @param TwitterSerializable $object * @return \stdClass */ public function serialize(TwitterSerializable $object) { /* @var TwitterExtendedEntity $object */ Assertion::true($this->canSerialize($object), 'object must be an instance of TwitterExtendedEntity'); $extendedEntity = new \stdClass(); $extendedEntity->id = $object->getId(); $extendedEntity->media_url = $object->getMediaUrl(); $extendedEntity->media_url_https = $object->getMediaUrlHttps(); $extendedEntity->url = $object->getUrl(); $extendedEntity->display_url = $object->getDisplayUrl(); $extendedEntity->expanded_url = $object->getExpandedUrl(); $extendedEntity->type = $object->getType(); $extendedEntity->video_info = $object->getVideoInfo(); $extendedEntity->duration_millis = $object->getDurationMillis(); $extendedEntity->indices = $this->entityIndicesSerializer->serialize($object->getIndices()); $extendedEntity->sizes = []; foreach ($object->getSizes() as $size) { $extendedEntity->sizes[$size->getName()] = $this->mediaSizeSerializer->serialize($size); } $extendedEntity->variants = []; foreach ($object->getVariants() as $variant) { $extendedEntity->variants[] = $this->variantMediaSerializer->serialize($variant); } return $extendedEntity; }
/** * @param TwitterSerializable $object * @return \stdClass */ public function serialize(TwitterSerializable $object) { /* @var TwitterMedia $object */ Assertion::true($this->canSerialize($object), 'object must be an instance of TwitterMedia'); $media = new \stdClass(); $media->id = $object->getId(); $media->media_url = $object->getMediaUrl(); $media->media_url_https = $object->getMediaUrlHttps(); $media->url = $object->getUrl(); $media->display_url = $object->getDisplayUrl(); $media->expanded_url = $object->getExpandedUrl(); $media->type = $object->getType(); $media->indices = $this->entityIndicesSerializer->serialize($object->getIndices()); $media->sizes = []; foreach ($object->getSizes() as $size) { $media->sizes[$size->getName()] = $this->mediaSizeSerializer->serialize($size); } return $media; }