Code Duplication    Length = 36-36 lines in 3 locations

spec/Akeneo/Crowdin/Api/AddDirectorySpec.php 1 location

@@ 11-46 (lines=36) @@
8
use Guzzle\Http\Message\Response;
9
use PhpSpec\ObjectBehavior;
10
11
class AddDirectorySpec extends ObjectBehavior
12
{
13
    public function let(Client $client, HttpClient $http)
14
    {
15
        $client->getHttpClient()->willReturn($http);
16
        $client->getProjectIdentifier()->willReturn('sylius');
17
        $client->getProjectApiKey()->willReturn('1234');
18
        $this->beConstructedWith($client);
19
    }
20
21
    public function it_should_be_an_api()
22
    {
23
        $this->shouldBeAnInstanceOf('Akeneo\Crowdin\Api\AbstractApi');
24
    }
25
26
    public function it_should_not_add_with_no_directory(HttpClient $http, Request $request, Response $response)
27
    {
28
        $content = '<xml></xml>';
29
        $response->getBody(true)->willReturn($content);
30
        $request->send()->willReturn($response);
31
32
        $http->post('project/sylius/add-directory?key=1234')->willReturn($request);
33
        $this->shouldThrow('\InvalidArgumentException')->duringExecute();
34
    }
35
36
    public function it_adds_a_directory(HttpClient $http, Request $request, Response $response)
37
    {
38
        $this->setDirectory('directory-to-create');
39
        $content = '<?xml version="1.0" encoding="ISO-8859-1"?><success></success>';
40
        $response->getBody(true)->willReturn($content);
41
        $request->send()->willReturn($response);
42
        $http->post('project/sylius/add-directory?key=1234', [], ['name' => 'directory-to-create'])->willReturn($request);
43
44
        $this->execute()->shouldBe($content);
45
    }
46
}
47

spec/Akeneo/Crowdin/Api/DeleteDirectorySpec.php 1 location

@@ 11-46 (lines=36) @@
8
use Guzzle\Http\Message\Response;
9
use PhpSpec\ObjectBehavior;
10
11
class DeleteDirectorySpec extends ObjectBehavior
12
{
13
    public function let(Client $client, HttpClient $http)
14
    {
15
        $client->getHttpClient()->willReturn($http);
16
        $client->getProjectIdentifier()->willReturn('sylius');
17
        $client->getProjectApiKey()->willReturn('1234');
18
        $this->beConstructedWith($client);
19
    }
20
21
    public function it_should_be_an_api()
22
    {
23
        $this->shouldBeAnInstanceOf('Akeneo\Crowdin\Api\AbstractApi');
24
    }
25
26
    public function it_should_not_delete_with_no_directory(HttpClient $http, Request $request, Response $response)
27
    {
28
        $content = '<xml></xml>';
29
        $response->getBody(true)->willReturn($content);
30
        $request->send()->willReturn($response);
31
32
        $http->post('project/sylius/delete-directory?key=1234')->willReturn($request);
33
        $this->shouldThrow('\InvalidArgumentException')->duringExecute();
34
    }
35
36
    public function it_deletes_a_directory(HttpClient $http, Request $request, Response $response)
37
    {
38
        $this->setDirectory('directory-to-delete');
39
        $content = '<?xml version="1.0" encoding="ISO-8859-1"?><success></success>';
40
        $response->getBody(true)->willReturn($content);
41
        $request->send()->willReturn($response);
42
        $http->post('project/sylius/delete-directory?key=1234', [], ['name' => 'directory-to-delete'])->willReturn($request);
43
44
        $this->execute()->shouldBe($content);
45
    }
46
}
47

spec/Akeneo/Crowdin/Api/DeleteFileSpec.php 1 location

@@ 11-46 (lines=36) @@
8
use Guzzle\Http\Message\Response;
9
use PhpSpec\ObjectBehavior;
10
11
class DeleteFileSpec extends ObjectBehavior
12
{
13
    public function let(Client $client, HttpClient $http)
14
    {
15
        $client->getHttpClient()->willReturn($http);
16
        $client->getProjectIdentifier()->willReturn('sylius');
17
        $client->getProjectApiKey()->willReturn('1234');
18
        $this->beConstructedWith($client);
19
    }
20
21
    public function it_should_be_an_api()
22
    {
23
        $this->shouldBeAnInstanceOf('Akeneo\Crowdin\Api\AbstractApi');
24
    }
25
26
    public function it_should_not_delete_with_no_file(HttpClient $http, Request $request, Response $response)
27
    {
28
        $content = '<xml></xml>';
29
        $response->getBody(true)->willReturn($content);
30
        $request->send()->willReturn($response);
31
32
        $http->post('project/sylius/delete-file?key=1234')->willReturn($request);
33
        $this->shouldThrow('\InvalidArgumentException')->duringExecute();
34
    }
35
36
    public function it_deletes_a_file(HttpClient $http, Request $request, Response $response)
37
    {
38
        $this->setFile('path/to/my/file');
39
        $content = '<?xml version="1.0" encoding="ISO-8859-1"?><success></success>';
40
        $response->getBody(true)->willReturn($content);
41
        $request->send()->willReturn($response);
42
        $http->post('project/sylius/delete-file?key=1234', [], ['file' => 'path/to/my/file'])->willReturn($request);
43
44
        $this->execute()->shouldBe($content);
45
    }
46
}
47