/** * Setup */ public function setUp() { $plugin = new MockPlugin(); $response = new GuzzleResponse(200); $response->setBody(file_get_contents(__DIR__ . '/Fixtures/response_projects.json')); $plugin->addResponse($response); $client = new VersionEyeClient('foo'); $client->addSubscriber($plugin); $this->object = new VersionEyeApi($client, 'foo'); }
/** * @test */ public function testCollectOffline() { $plugin = new MockPlugin(); $plugin->addResponse($this->getFixtureResponse('response.json', 404)); $client = new VersionEyeClient('foo'); $client->addSubscriber($plugin); $api = new VersionEyeApi($client, 'api_key'); $loader = new ComposerLoader(__DIR__ . '/Fixtures/composer.json'); $this->object = new VersionEyeDataCollector($api, $loader); $this->object->collect(new Request(), new Response()); /* @var VersionEyeResult $data */ $data = $this->object->getData(); $this->assertInstanceOf('Mattsches\\VersionEyeBundle\\Util\\VersionEyeResult', $data); $this->assertSame('version_eye', $this->object->getName()); $this->assertObjectHasAttribute('dependencies', $data); $this->assertObjectHasAttribute('status', $data); $this->assertObjectHasAttribute('outNumber', $data); $this->assertObjectHasAttribute('depNumber', $data); $this->assertObjectNotHasAttribute('foobar', $data); $this->assertEquals(0, $data->getStatus()); $this->assertNull($data->getDepNumber()); $this->assertNull($data->getOutNumber()); }
/** * Updates an existing project * * @param string $projectKey * @param string $composerJson * @return \Guzzle\Http\Message\Response */ public function updateProject($projectKey, $composerJson) { /* @var \Guzzle\Http\Message\Request $request */ $request = $this->client->post('projects/' . $projectKey . '.json?api_key=' . $this->apiKey)->addPostFiles(array('project_file' => $composerJson)); return $request->send(); }