Esempio n. 1
0
 public function testSerializeDeserialize()
 {
     $dateStr = '2014-01-09 19:20:30';
     $date = EBDateTime::createFromFormat(EBDateTime::getDateTimeFormat(), $dateStr);
     $dateJson = $this->serializer->serialize($date, 'json');
     $this->assertEquals('"2014-01-09 19:20:30"', $dateJson);
     $dateXml = $this->serializer->serialize($date, 'xml');
     $this->assertEquals("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<result><![CDATA[2014-01-09 19:20:30]]></result>\n", $dateXml);
     /** @var EBDateTime $dateFromJson */
     $dateFromJson = $this->serializer->deserialize($dateJson, 'EBT\\EBDate\\EBDateTime', 'json');
     $this->assertEquals($dateStr, $dateFromJson->formatAsString());
     /** @var EBDateTime $dateFromXml */
     $dateFromXml = $this->serializer->deserialize($dateXml, 'EBT\\EBDate\\EBDateTime', 'xml');
     $this->assertEquals($dateStr, $dateFromXml->formatAsString());
 }
Esempio n. 2
0
 /**
  * @param mixed $data
  * @param array $type
  *
  * @return EBDateTime
  */
 private function parseDateTime($data, array $type)
 {
     return EBDateTime::createFromFormat($this->getFormat($type), (string) $data, isset($type['params'][1]) ? new \DateTimeZone($type['params'][1]) : $this->defaultTimezone);
 }
 /**
  * @covers EBC\PublisherClient\PublisherClientInterface::getCampaigns()
  */
 public function testGetCampaignsWithPagination()
 {
     $client = new PublisherClient();
     $client->setPublisher(2, 'thekey', 'thesecret');
     $plugin = new MockPlugin();
     $plugin->addResponse(new Response(200, null, file_get_contents(__DIR__ . '/Model/campaigns.json')));
     $client->addSubscriber($plugin);
     $campaigns = $client->getCampaigns(PublisherClientInterface::CAMPAIGN_ORDER_BY_FIELD_UPDATED_AT, PublisherClientInterface::CAMPAIGN_ORDER_BY_DIRECTION_ASC, EBDateTime::createFromFormat(EBDateTime::getDateFormat(), '2014-02-15'), 1, null, null, 2, 10);
     $this->assertCount(7, $campaigns);
     /** @var Request $request */
     $request = $plugin->getReceivedRequests()[0];
     $this->assertEquals('https://api.emailbidding.com/api/p/publishers/2/campaigns?key=thekey&secret=thesecret&orderField=updated_at&orderDirection=ASC&endDateGreaterThan=2014-02-15&country=1&page=2&pageResultsNumber=10', $request->getUrl());
 }
Esempio n. 4
0
 public function testDifferences()
 {
     // in seconds
     $date1 = EBDateTime::createFromFormatUTC('Y-m-d H:i:s', '2014-01-09 19:30:20');
     $date2 = EBDateTime::createFromFormatUTC('Y-m-d H:i:s', '2014-01-09 19:35:30');
     $this->assertEquals(310, $date1->diffInSeconds($date2));
 }
Esempio n. 5
0
 /**
  * Get the difference in seconds
  *
  * @param  EBDateTime  $dateTime
  * @param  boolean     $abs Get the absolute of the difference
  *
  * @return integer
  */
 public function diffInSeconds(EBDateTime $dateTime, $abs = true)
 {
     $value = $dateTime->getTimestamp() - $this->getTimestamp();
     return $abs ? abs($value) : $value;
 }