public function testCreateFromBase64Data() { $data = "SGVsbG8gaSBhbSBhIHN0cmluZw=="; $attachment = Attachment::createFromBase64Data($data, "text/plain", 2); $this->assertEquals("Hello i am a string", $attachment->getRawData()); $this->assertEquals($data, $attachment->getBase64EncodedData()); $this->assertEquals("text/plain", $attachment->getContentType()); $this->assertEquals(28, $attachment->getLength()); $this->assertEquals(2, $attachment->getRevPos()); }
/** * @param string $documentId * @param array $data * @return array */ private function createDocumentAttachments($documentId, $data) { $attachments = array(); $client = $this->dm->getHttpClient(); $basePath = '/' . $this->dm->getCouchDBClient()->getDatabase() . '/' . $documentId . '/'; foreach ($data as $filename => $attachment) { if (isset($attachment['stub']) && $attachment['stub']) { $instance = Attachment::createStub($attachment['content_type'], $attachment['length'], $attachment['revpos'], $client, $basePath . $filename); } else { if (isset($attachment['data'])) { $instance = Attachment::createFromBase64Data($attachment['data'], $attachment['content_type'], $attachment['revpos']); } } $attachments[$filename] = $instance; } return $attachments; }