public static function setUpBeforeClass()
 {
     self::$client = new Client();
     $schedulesStream = Stream::factory(JsonLoader::getCampaignSchedulesJson());
     $scheduleStream = Stream::factory(JsonLoader::getCampaignScheduleJson());
     $testSendStream = Stream::factory(JsonLoader::getTestSendJson());
     $mock = new Mock([new Response(200, array(), $schedulesStream), new Response(200, array(), $scheduleStream), new Response(201, array(), $scheduleStream), new Response(200, array(), $scheduleStream), new Response(204, array()), new Response(400, array()), new Response(200, array(), $testSendStream)]);
     self::$client->getEmitter()->attach($mock);
 }
 public function testGetSchedules()
 {
     $curlResponse = CurlResponse::create(JsonLoader::getCampaignSchedulesJson(), array('http_code' => 200));
     $this->restClient->expects($this->once())->method('get')->with()->will($this->returnValue($curlResponse));
     $schedules = $this->campaignScheduleService->getSchedules('access_token', 9100367935463);
     $this->assertInstanceOf('Ctct\\Components\\EmailMarketing\\Schedule', $schedules[0]);
     $this->assertEquals(1, $schedules[0]->id);
     $this->assertEquals("2012-12-16T11:07:43.626Z", $schedules[0]->scheduled_date);
     $this->assertEquals(2, $schedules[1]->id);
     $this->assertEquals("2012-12-17T11:08:00.000Z", $schedules[1]->scheduled_date);
 }