/** * @param array $data * @return $this */ public function import(array $data) { $this->id = $data['id']; $this->name = $data['name']; $this->primaryType = $data['primary_type']; $this->platformExposure = $data['platform_exposure']; $this->email = $data['email'] ?: ''; $this->dailyImpressionsAnyAuditStatus = $data['daily_imps_any_audit_status'] ?: 0; $this->dailyImpressionsAppNexusReviewed = $data['daily_imps_appnexus_reviewed'] ?: 0; $this->dailyImpressionsAppNexusSellerReviewed = $data['daily_imps_appnexus_seller_reviewed'] ?: 0; $this->IASHCompliant = $data['is_iash_compliant']; $this->resold = $data['has_resold']; $visibilityRules = new VisibilityRules(); $this->visibilityRules = $visibilityRules->import($data['visibility_rules']); $this->bidder = new Bidder(); if ($data['bidder']) { $this->bidder->import($data['bidder']); } $this->sellerType = $data['seller_type'] ?: ''; $this->contactInfo = new ContactInfo(); $this->active = $data['active']; $this->lastModified = \DateTime::createFromFormat("Y-m-d H:i:s", $data['last_modified']); $this->defaultDiscrepancyPCT = (double) $data['default_discrepancy_pct'] ?: 0.0; if ($data['contact_info'] !== null) { $this->contactInfo = $this->contactInfo->import(isset($data['contact_info'][0]) ? $data['contact_info'][0] : $data['contact_info']); } return $this; }
public function testPlatformMemberBidderServiceImport() { foreach ($this->getData('platform-member', 'platform-members') as $data) { if ($data['bidder']) { $obj = new PlatformMember\Bidder(); $obj->import($data['bidder']); $this->assertEquals($data['bidder']['id'], $obj->getId()); $this->assertEquals($data['bidder']['name'], $obj->getName()); $this->assertInternalType('int', $obj->getId()); $this->assertInternalType('string', $obj->getName()); } } }