public function testSaveImage() { $expectedFileContent = 'image'; $entity = Measurement::createNew()->setChartImage(base64_encode($expectedFileContent)); $filename = sprintf("%s/jpg.%s", sys_get_temp_dir(), rand(1, 9999999)); $entity->saveImage($filename); $this->assertStringEqualsFile($filename, $expectedFileContent); }
public function jsonInstantiationDataProvider() { return array(array('Grow\\Client\\Model\\Chart', array("ChartImage" => base64_encode('image'), "BMI" => 16.9, "TOW" => 3423, "Ethnicity" => "Unclassified", "Height" => 163, "Weight" => 45, "Parity" => 4, "DateCreated" => '2015-01-26 10:12:16', "EDD" => '2015-01-07', "Centiles" => array(array("CentileIdentifier" => 31095, "BirthWeight" => 3450, "Gender" => 1, "DetectedSGA" => false, "ReferralForSuspectedSGA" => false, "Outcome" => 0, "AntenatalCareUnit" => 2, "Gestation" => 283, "Centile" => 38.9, "GestationFormatted" => "40 weeks 3 days", "DateCreated" => "2015-01-26 10:44:46")), "Measurements" => array(array("MeasurementIdentifier" => 1018, "Type" => 0, "Value" => 32, "DateCreated" => "2015-01-26 10:25:17", "Date" => "2014-09-20"))), Chart::createNew()->setChartImage(base64_encode('image'))->setBmi(16.9)->setTow(3423)->setEthnicity("Unclassified")->setHeight(163)->setWeight(45)->setParity(4)->setDateCreated(new DateTime('2015-01-26 10:12:16'))->setEdd(new DateTime('2015-01-07'))->setCentiles(array(Centile::createNew()->setCentileIdentifier(31095)->setBirthWeight(3450)->setGender(1)->setDetectedSga(false)->setReferralForSuspectedSga(false)->setOutcome(0)->setAntenatalCareUnit(2)->setGestation(283)->setCentile(38.9)->setGestationFormatted("40 weeks 3 days")->setDateCreated(new DateTime("2015-01-26 10:44:46"))))->setMeasurements(array(Measurement::createNew()->setMeasurementIdentifier(1018)->setType(0)->setValue(32)->setDateCreated(new DateTime("2015-01-26 10:25:17"))->setDate(new DateTime("2014-09-20")))))); }
$measurementTypes = $apiClient->getMeasurementTypes(); $hospitals = $apiClient->getHospitals(); $babies = array(Baby::createNew()->setBirthOrderNumber(0)->setBirthWeight(3550)->setGender($genders->current()->getIdentifier())->setGestation(275)->setName('Baby1')->setUnknown(false), Baby::createNew()->setBirthOrderNumber(1)->setUnknown(true)); $imageConfig = ImageConfig::createNew()->setGreyscale(false)->setGridlinesByWeight(false)->setScalePercent(200)->setShowExtraCentiles(false); $pdfConfig = PdfConfig::createNew()->setGreyscale(false)->setGridlinesByWeight(false)->setShowExtraCentiles(false); $chart = Chart::createNew()->setBabies($babies)->setDob(new DateTime("1990-01-01 01:01:01"))->setEdd($edd)->setEthnicity($ethnicities->current()->getIdentifier())->setFirstname("SampleFN")->setLastname("SampleLN")->setMotherRef("SampleMR")->setGetPdf(true)->setGetImage(true)->setHeight(163)->setImageConfig($imageConfig)->setPdfConfig($pdfConfig)->setWeight(45); $chartResponse = $apiClient->addChart($chart); $chartIdentifier = $chart->getChartIdentifier(); $chartIdentifierPrefix = $apiClient->getChartIdentifierPrefix($chartIdentifier); $prefixedChartIdentifier = sprintf("%s%s", (string) $chartIdentifierPrefix, $chartIdentifier); echo sprintf("Chart #%s added.\n", $chartIdentifier); $imageFilename = sprintf("/tmp/%s.jpg", $chartIdentifier); $chartResponse->saveImage($imageFilename); echo sprintf("Chart's image saved as '%s'.\n", $imageFilename); $pdfFilename = sprintf("/tmp/%s.pdf", $chartIdentifier); $chartResponse->savePdf($pdfFilename); echo sprintf("Chart's pdf saved as '%s'.\n", $pdfFilename); // getChart($chartIdentifier, DateTime $edd, ImageConfig $imageConfig); // Measurement - Add $measurement = Measurement::createNew()->setDate(new DateTime())->setType($measurementTypes->current()->getIdentifier())->setValue(32)->setImageConfig($imageConfig); $measurement = $apiClient->addMeasurement($prefixedChartIdentifier, $measurement); $measurementIdentifier = $measurement->getMeasurementIdentifier(); echo sprintf("Measurement #%s added to chart #%s.\n", $measurementIdentifier, $chartIdentifier); $measurementImageFilename = sprintf("/tmp/%s.%s.jpg", $chartIdentifier, $measurementIdentifier); $measurement->saveImage($measurementImageFilename); echo sprintf("Measurement's image saved as '%s'. You can see x-mark with value of 32 on it.\n", $measurementImageFilename); // Centile - Add $centile = Centile::createNew()->setAntenatalCareUnit($hospitals->current()->getIdentifier())->setBabyDob($edd)->setBirthWeight(3450)->setDetectedSga(false)->setEdd($edd)->setGender($genders->current()->getIdentifier())->setOutcome($outcomes->current()->getIdentifier())->setReferralForSuspectedSga(false); $centile = $apiClient->addCentile($prefixedChartIdentifier, $centile); $centileIdentifier = $centile->getCentileIdentifier(); echo sprintf("Centile #%s added.\nGestation: %s\n", $centileIdentifier, $centile->getGestationFormatted());