| 
<?php
 /*
 * This file is part of Chevere.
 *
 * (c) Rodolfo Berrios <rodolfo@chevere.org>
 *
 * For the full copyright and license information, please view the LICENSE
 * file that was distributed with this source code.
 */
 
 declare(strict_types=1);
 
 namespace Chevere\Xr\Tests;
 
 use Chevere\Xr\XrCurl;
 use CurlHandle;
 use PHPUnit\Framework\TestCase;
 
 final class XrCurlTest extends TestCase
 {
 public function testError(): void
 {
 $curl = new XrCurl();
 $this->assertSame('', $curl->error());
 }
 
 public function testExec(): void
 {
 $curl = new XrCurl();
 $this->assertFalse($curl->exec());
 }
 
 public function testOptArray(): void
 {
 $this->expectNotToPerformAssertions();
 $curl = new XrCurl();
 $curl->setOptArray([CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1]);
 }
 
 public function testNoHandleClose(): void
 {
 $this->expectNotToPerformAssertions();
 $curl = new XrCurl();
 $curl->close();
 }
 
 public function testInitNull(): void
 {
 $curl = new XrCurl();
 $handle = $curl->handle();
 $this->assertInstanceOf(CurlHandle::class, $handle);
 $this->assertSame('', $curl->error());
 $curl->close();
 }
 
 public function testExecBool(): void
 {
 $curl = new XrCurl();
 $this->assertFalse($curl->exec());
 $curl = new XrCurl('https://www.cloudflare.com/ips-v4');
 $this->expectOutputRegex('#.*#');
 $this->assertTrue($curl->exec());
 $curl->close();
 }
 
 public function testExecString(): void
 {
 $curl = new XrCurl('https://www.cloudflare.com/ips-v4');
 $curl->setOptArray([CURLOPT_RETURNTRANSFER => 1]);
 $this->assertIsString($curl->exec());
 }
 }
 
 |