HEX
Server: nginx/1.28.1
System: Linux 10-41-63-61 6.8.0-31-generic #31-Ubuntu SMP PREEMPT_DYNAMIC Sat Apr 20 00:40:06 UTC 2024 x86_64
User: www (1001)
PHP: 7.4.33
Disabled: passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv
Upload Files
File: /www/wwwroot/www.ydrbh.com/vendor/apimatic/core/src/TestCase/StatusCodeMatcher.php
<?php

declare(strict_types=1);

namespace Core\TestCase;

use PHPUnit\Framework\TestCase;

class StatusCodeMatcher
{
    /**
     * @var int|null
     */
    private $statusCode;

    /**
     * @var int|null
     */
    private $lowerStatusCode;

    /**
     * @var int|null
     */
    private $upperStatusCode;
    private $assertStatusRange = false;
    private $testCase;

    /**
     * Creates a new StatusCodeMatcher object.
     */
    public function __construct(TestCase $testCase)
    {
        $this->testCase = $testCase;
    }

    /**
     * Sets statusCode of the object to the value provided.
     */
    public function setStatusCode(int $statusCode): void
    {
        $this->statusCode = $statusCode;
    }

    /**
     * Sets an expected status code range. Used in case the test case expects a status from a range of status codes.
     */
    public function setStatusRange(int $lowerStatusCode, int $upperStatusCode): void
    {
        $this->assertStatusRange = true;
        $this->lowerStatusCode = $lowerStatusCode;
        $this->upperStatusCode = $upperStatusCode;
    }

    /**
     * Assert required assertions according to the properties set within the object.
     */
    public function assert(int $statusCode)
    {
        if (isset($this->statusCode)) {
            $this->testCase->assertEquals($this->statusCode, $statusCode, "Status is not $this->statusCode");
            return;
        }
        if (!$this->assertStatusRange) {
            return;
        }
        $message = "Status is not between $this->lowerStatusCode and $this->upperStatusCode";
        $this->testCase->assertGreaterThanOrEqual($this->lowerStatusCode, $statusCode, $message);
        $this->testCase->assertLessThanOrEqual($this->upperStatusCode, $statusCode, $message);
    }
}